[1/2] urlmon: partial implement HlinkSimpleNavigateToString
André Hentschel
nerv at dawncrow.de
Mon Jun 28 14:16:51 CDT 2010
Fix for bug 7574 (1.2)
---
dlls/urlmon/Makefile.in | 2 +-
dlls/urlmon/umon.c | 25 ++++++++++++++++++++++++-
2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/dlls/urlmon/Makefile.in b/dlls/urlmon/Makefile.in
index 91277a5..609ca20 100644
--- a/dlls/urlmon/Makefile.in
+++ b/dlls/urlmon/Makefile.in
@@ -4,7 +4,7 @@ SRCDIR = @srcdir@
VPATH = @srcdir@
MODULE = urlmon.dll
IMPORTLIB = urlmon
-IMPORTS = uuid ole32 oleaut32 rpcrt4 shlwapi wininet user32 advapi32 kernel32 ntdll
+IMPORTS = uuid ole32 oleaut32 rpcrt4 shlwapi wininet user32 advapi32 kernel32 ntdll shell32
EXTRADEFS = -D_URLMON_ -DENTRY_PREFIX=URLMON_ -DPROXY_DELEGATION -DREGISTER_PROXY_DLL \
-DPROXY_CLSID_IS="{0x79EAC9F1,0xBAF9,0x11CE,{0x8C,0x82,0x00,0xAA,0x00,0x4B,0xA9,0x0B}}"
diff --git a/dlls/urlmon/umon.c b/dlls/urlmon/umon.c
index 7ce22cc..e122e07 100644
--- a/dlls/urlmon/umon.c
+++ b/dlls/urlmon/umon.c
@@ -24,6 +24,9 @@
#include "winreg.h"
#include "shlwapi.h"
+#include "hlink.h"
+#include "shellapi.h"
+
#include "wine/debug.h"
@@ -742,7 +745,27 @@ HRESULT WINAPI HlinkSimpleNavigateToString( LPCWSTR szTarget,
LPCWSTR szLocation, LPCWSTR szTargetFrameName, IUnknown *pUnk,
IBindCtx *pbc, IBindStatusCallback *pbsc, DWORD grfHLNF, DWORD dwReserved)
{
- FIXME("%s\n", debugstr_w( szTarget ) );
+ FIXME("%s %s %s %p %p %p %u %u partial stub\n", debugstr_w( szTarget ), debugstr_w( szLocation ),
+ debugstr_w( szTargetFrameName ), pUnk, pbc, pbsc, grfHLNF, dwReserved);
+
+ /* undocumented: 0 means HLNF_OPENINNEWWINDOW*/
+ if (!grfHLNF) grfHLNF = HLNF_OPENINNEWWINDOW;
+
+ if (grfHLNF == HLNF_OPENINNEWWINDOW)
+ {
+ SHELLEXECUTEINFOW sei;
+ static const WCHAR openW[] = { 'o', 'p', 'e', 'n', 0 };
+
+ memset(&sei, 0, sizeof(sei));
+ sei.cbSize = sizeof(sei);
+ sei.lpVerb = openW;
+ sei.nShow = SW_SHOWNORMAL;
+ sei.fMask = SEE_MASK_FLAG_NO_UI | SEE_MASK_NO_CONSOLE;
+ sei.lpFile = szTarget;
+
+ if (ShellExecuteExW(&sei)) return S_OK;
+ }
+
return E_NOTIMPL;
}
--
Best Regards, André Hentschel
More information about the wine-patches
mailing list