Module: wine Branch: refs/heads/master Commit: d2cb9ec567ea1f19d9c42c50ddc3a01491006b6c URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=d2cb9ec567ea1f19d9c42c50...
Author: Robert Shearman rob@codeweavers.com Date: Mon Jul 17 20:19:38 2006 +0100
rpcrt4: Display a big message box if the user tries to use typelib marshaling in native oleaut32 with builtin rpcrt4 to tell them what is wrong.
---
dlls/rpcrt4/cproxy.c | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/dlls/rpcrt4/cproxy.c b/dlls/rpcrt4/cproxy.c index f022ed3..88910a3 100644 --- a/dlls/rpcrt4/cproxy.c +++ b/dlls/rpcrt4/cproxy.c @@ -344,6 +344,19 @@ HRESULT WINAPI CreateProxyFromTypeInfo( LPTYPEINFO pTypeInfo, LPUNKNOWN pUnkOuter, REFIID riid, LPRPCPROXYBUFFER *ppProxy, LPVOID *ppv ) { + typedef INT (WINAPI *MessageBoxA)(HWND,LPCSTR,LPCSTR,UINT); + HMODULE hUser32 = LoadLibraryA("user32"); + MessageBoxA pMessageBoxA = GetProcAddress(hUser32, "MessageBoxA"); + FIXME("%p %p %s %p %p\n", pTypeInfo, pUnkOuter, debugstr_guid(riid), ppProxy, ppv); + if (pMessageBoxA) + { + pMessageBoxA(NULL, + "The native implementation of OLEAUT32.DLL cannot be used " + "with Wine's RPCRT4.DLL. Remove OLEAUT32.DLL and try again.\n", + "Wine: Unimplemented CreateProxyFromTypeInfo", + 0x10); + ExitProcess(1); + } return E_NOTIMPL; }