urlmon: Implement BindAsyncMoniker function.
This commit is contained in:
parent
7b4d59c5a0
commit
81c446ef5d
|
@ -1349,6 +1349,42 @@ HRESULT WINAPI IsAsyncMoniker(IMoniker *pmk)
|
|||
return S_FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* BindAsyncMoniker (URLMON.@)
|
||||
*
|
||||
* Bind a bind status callback to an asynchronous URL Moniker.
|
||||
*
|
||||
* PARAMS
|
||||
* pmk [I] Moniker object to bind status callback to
|
||||
* grfOpt [I] Options, seems not used
|
||||
* pbsc [I] Status callback to bind
|
||||
* iidResult [I] Interface to return
|
||||
* ppvResult [O] Resulting asynchronous moniker object
|
||||
*
|
||||
* RETURNS
|
||||
* Success: S_OK.
|
||||
* Failure: E_INVALIDARG, if any argument is invalid, or
|
||||
* E_OUTOFMEMORY if memory allocation fails.
|
||||
*/
|
||||
HRESULT WINAPI BindAsyncMoniker(IMoniker *pmk, DWORD grfOpt, IBindStatusCallback *pbsc, REFIID iidResult, LPVOID *ppvResult)
|
||||
{
|
||||
LPBC pbc = NULL;
|
||||
HRESULT hr = E_INVALIDARG;
|
||||
|
||||
if (pmk && ppvResult)
|
||||
{
|
||||
*ppvResult = NULL;
|
||||
|
||||
hr = CreateAsyncBindCtx(0, pbsc, NULL, &pbc);
|
||||
if (hr == NOERROR)
|
||||
{
|
||||
hr = IMoniker_BindToObject(pmk, pbc, NULL, iidResult, ppvResult);
|
||||
IBindCtx_Release(pbc);
|
||||
}
|
||||
}
|
||||
return hr;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* RegisterBindStatusCallback (URLMON.@)
|
||||
*
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
@ stub AsyncGetClassBits
|
||||
@ stub AsyncInstallDistributionUnit
|
||||
@ stub BindAsyncMoniker
|
||||
@ stdcall BindAsyncMoniker(ptr long ptr ptr ptr)
|
||||
@ stdcall CoGetClassObjectFromURL(ptr wstr long long wstr ptr long ptr ptr ptr)
|
||||
@ stub CoInstall
|
||||
@ stdcall CoInternetCombineUrl(wstr wstr long wstr long ptr long)
|
||||
|
|
Loading…
Reference in New Issue