diff --git a/dlls/urlmon/umon.c b/dlls/urlmon/umon.c index 67861394ed5..9031fa9f9c3 100644 --- a/dlls/urlmon/umon.c +++ b/dlls/urlmon/umon.c @@ -1135,7 +1135,15 @@ HRESULT WINAPI FindMimeFromData(LPBC pBC, LPCWSTR pwzUrl, LPVOID pBuffer, */ HRESULT WINAPI IsAsyncMoniker(IMoniker *pmk) { - FIXME("stub\n"); + IUnknown *am; + + TRACE("(%p)\n", pmk); + if(!pmk) + return E_INVALIDARG; + if(SUCCEEDED(IMoniker_QueryInterface(pmk, &IID_IAsyncMoniker, (void**)&am))) { + IUnknown_Release(am); + return S_OK; + } return S_FALSE; } diff --git a/include/urlmon.h b/include/urlmon.h index 368c71d4663..aaff473df77 100644 --- a/include/urlmon.h +++ b/include/urlmon.h @@ -1359,6 +1359,7 @@ void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub( #endif /* __IInternetProtocolInfo_INTERFACE_DEFINED__ */ +DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B); DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B); #define MK_S_ASYNCHRONOUS 0x000401E8 #define S_ASYNCHRONOUS MK_S_ASYNCHRONOUS diff --git a/include/urlmon.idl b/include/urlmon.idl index 136cab0d63e..3f9382e295a 100644 --- a/include/urlmon.idl +++ b/include/urlmon.idl @@ -508,6 +508,7 @@ interface IInternetProtocolInfo : IUnknown [in] DWORD dwReserved); } +cpp_quote("DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);") cpp_quote("DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);") cpp_quote("#define MK_S_ASYNCHRONOUS 0x000401E8")