Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
d4da27ae
Commit
d4da27ae
authored
Jul 31, 2006
by
Jacek Caban
Committed by
Alexandre Julliard
Jul 31, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
shdocvw: Added WebBrowser::Invoke implementation.
parent
3d1627f6
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
39 additions
and
3 deletions
+39
-3
shdocvw.h
dlls/shdocvw/shdocvw.h
+1
-0
shdocvw_main.c
dlls/shdocvw/shdocvw_main.c
+26
-0
webbrowser.c
dlls/shdocvw/webbrowser.c
+12
-3
No files found.
dlls/shdocvw/shdocvw.h
View file @
d4da27ae
...
@@ -212,6 +212,7 @@ extern void register_iewindow_class(void);
...
@@ -212,6 +212,7 @@ extern void register_iewindow_class(void);
extern
void
unregister_iewindow_class
(
void
);
extern
void
unregister_iewindow_class
(
void
);
HRESULT
register_class_object
(
BOOL
);
HRESULT
register_class_object
(
BOOL
);
HRESULT
get_typeinfo
(
ITypeInfo
**
);
/* memory allocation functions */
/* memory allocation functions */
...
...
dlls/shdocvw/shdocvw_main.c
View file @
d4da27ae
...
@@ -40,6 +40,30 @@ LONG SHDOCVW_refCount = 0;
...
@@ -40,6 +40,30 @@ LONG SHDOCVW_refCount = 0;
HINSTANCE
shdocvw_hinstance
=
0
;
HINSTANCE
shdocvw_hinstance
=
0
;
static
HMODULE
SHDOCVW_hshell32
=
0
;
static
HMODULE
SHDOCVW_hshell32
=
0
;
static
ITypeInfo
*
wb_typeinfo
=
NULL
;
HRESULT
get_typeinfo
(
ITypeInfo
**
typeinfo
)
{
ITypeLib
*
typelib
;
HRESULT
hres
;
if
(
wb_typeinfo
)
{
*
typeinfo
=
wb_typeinfo
;
return
S_OK
;
}
hres
=
LoadRegTypeLib
(
&
LIBID_SHDocVw
,
1
,
1
,
LOCALE_SYSTEM_DEFAULT
,
&
typelib
);
if
(
FAILED
(
hres
))
{
ERR
(
"LoadRegTypeLib failed: %08lx
\n
"
,
hres
);
return
hres
;
}
hres
=
ITypeLib_GetTypeInfoOfGuid
(
typelib
,
&
IID_IWebBrowser2
,
&
wb_typeinfo
);
ITypeLib_Release
(
typelib
);
*
typeinfo
=
wb_typeinfo
;
return
hres
;
}
/*************************************************************************
/*************************************************************************
* SHDOCVW DllMain
* SHDOCVW DllMain
...
@@ -56,6 +80,8 @@ BOOL WINAPI DllMain(HINSTANCE hinst, DWORD fdwReason, LPVOID fImpLoad)
...
@@ -56,6 +80,8 @@ BOOL WINAPI DllMain(HINSTANCE hinst, DWORD fdwReason, LPVOID fImpLoad)
case
DLL_PROCESS_DETACH
:
case
DLL_PROCESS_DETACH
:
if
(
SHDOCVW_hshell32
)
FreeLibrary
(
SHDOCVW_hshell32
);
if
(
SHDOCVW_hshell32
)
FreeLibrary
(
SHDOCVW_hshell32
);
unregister_iewindow_class
();
unregister_iewindow_class
();
if
(
wb_typeinfo
)
ITypeInfo_Release
(
wb_typeinfo
);
break
;
break
;
}
}
return
TRUE
;
return
TRUE
;
...
...
dlls/shdocvw/webbrowser.c
View file @
d4da27ae
...
@@ -172,9 +172,18 @@ static HRESULT WINAPI WebBrowser_Invoke(IWebBrowser2 *iface, DISPID dispIdMember
...
@@ -172,9 +172,18 @@ static HRESULT WINAPI WebBrowser_Invoke(IWebBrowser2 *iface, DISPID dispIdMember
EXCEPINFO
*
pExepInfo
,
UINT
*
puArgErr
)
EXCEPINFO
*
pExepInfo
,
UINT
*
puArgErr
)
{
{
WebBrowser
*
This
=
WEBBROWSER_THIS
(
iface
);
WebBrowser
*
This
=
WEBBROWSER_THIS
(
iface
);
FIXME
(
"(%p)->(%ld %s %ld %08x %p %p %p %p)
\n
"
,
This
,
dispIdMember
,
debugstr_guid
(
riid
),
ITypeInfo
*
typeinfo
;
HRESULT
hres
;
TRACE
(
"(%p)->(%ld %s %ld %08x %p %p %p %p)
\n
"
,
This
,
dispIdMember
,
debugstr_guid
(
riid
),
lcid
,
wFlags
,
pDispParams
,
pVarResult
,
pExepInfo
,
puArgErr
);
lcid
,
wFlags
,
pDispParams
,
pVarResult
,
pExepInfo
,
puArgErr
);
return
E_NOTIMPL
;
hres
=
get_typeinfo
(
&
typeinfo
);
if
(
FAILED
(
hres
))
return
hres
;
return
ITypeInfo_Invoke
(
typeinfo
,
WEBBROWSER2
(
This
),
dispIdMember
,
wFlags
,
pDispParams
,
pVarResult
,
pExepInfo
,
puArgErr
);
}
}
/* IWebBrowser methods */
/* IWebBrowser methods */
...
@@ -923,7 +932,7 @@ static HRESULT WebBrowser_Create(INT version, IUnknown *pOuter, REFIID riid, voi
...
@@ -923,7 +932,7 @@ static HRESULT WebBrowser_Create(INT version, IUnknown *pOuter, REFIID riid, voi
WebBrowser
*
ret
;
WebBrowser
*
ret
;
HRESULT
hres
;
HRESULT
hres
;
TRACE
(
"(%p %s %p)
\n
"
,
pOuter
,
debugstr_guid
(
riid
),
ppv
);
TRACE
(
"(%p %s %p)
version=%d
\n
"
,
pOuter
,
debugstr_guid
(
riid
),
ppv
,
version
);
ret
=
shdocvw_alloc
(
sizeof
(
WebBrowser
));
ret
=
shdocvw_alloc
(
sizeof
(
WebBrowser
));
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment