25#include "wine/winternl.h"
51 IBindStatusCallback_AddRef(iface);
75 return IBindStatusCallback_OnStartBinding(
This->pBSC,
dwReserved, pib);
85 return IBindStatusCallback_GetPriority(
This->pBSC, pnPriority);
95 return IBindStatusCallback_OnLowResource(
This->pBSC,
reserved);
106 return IBindStatusCallback_OnProgress(
This->pBSC, ulProgress,
107 ulProgressMax, ulStatusCode,
118 return IBindStatusCallback_OnStopBinding(
This->pBSC, hresult, szError);
129 return IBindStatusCallback_GetBindInfo(
This->pBSC, grfBINDF, pbindinfo);
132 pbindinfo->cbSize =
size;
140 DWORD dwSize, FORMATETC* pformatetc, STGMEDIUM* pstgmed)
145 return IBindStatusCallback_OnDataAvailable(
This->pBSC, grfBSCF,
dwSize,
146 pformatetc, pstgmed);
156 return IBindStatusCallback_OnObjectAvailable(
This->pBSC,
riid, punk);
162 DWORD dwSize, FORMATETC* pformatetc, STGMEDIUM* pstgmed)
188 hr = IBindStatusCallback_GetBindInfo(
This->pBSC, grfBINDF, pbindinfo);
192 pbindinfo->cbSize =
size;
197 *grfBINDF |= BINDF_PULLDATA | BINDF_ASYNCHRONOUS | BINDF_ASYNCSTORAGE;
232 IMoniker_Release(pMoniker);
239 IBindCtx_Release(pbc);
240 IMoniker_Release(pMoniker);
244 hr = IMoniker_BindToStorage(pMoniker, pbc,
NULL, &IID_IStream, (
void **)ppStream);
249 IBindCtx_Release(pbc);
250 IMoniker_Release(pMoniker);
260 LPBINDSTATUSCALLBACK lpfnCB)
266 TRACE(
"(%p, %s, %p, 0x%x, %p)\n", pCaller, szURL, ppStream,
dwReserved, lpfnCB);
268 if (!szURL || !ppStream)
292 LPBINDSTATUSCALLBACK lpfnCB)
296 TRACE(
"(%p, %s, %p, 0x%x, %p)\n", pCaller,
debugstr_w(szURL), ppStream,
299 if (!szURL || !ppStream)
303 blocking_bsc.
pBSC = lpfnCB;
312 LPBINDSTATUSCALLBACK lpfnCB)
340 LPBINDSTATUSCALLBACK lpfnCB)
353 async_bsc.
pBSC = lpfnCB;
357 IStream_Release(pStream);
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
#define MultiByteToWideChar
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
interface IStream * LPSTREAM
HRESULT WINAPI CreateBindCtx(DWORD reserved, LPBC *ppbc)
#define IsEqualGUID(rguid1, rguid2)
IBindStatusCallback IBindStatusCallback_iface
IBindStatusCallback * pBSC
#define CONTAINING_RECORD(address, type, field)
HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk)
HRESULT WINAPI URLOpenStreamW(LPUNKNOWN pCaller, LPCWSTR szURL, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB)
HRESULT WINAPI URLOpenBlockingStreamW(LPUNKNOWN pCaller, LPCWSTR szURL, LPSTREAM *ppStream, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB)
HRESULT WINAPI URLOpenStreamA(LPUNKNOWN pCaller, LPCSTR szURL, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB)
HRESULT WINAPI URLOpenBlockingStreamA(LPUNKNOWN pCaller, LPCSTR szURL, LPSTREAM *ppStream, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB)
static HRESULT WINAPI ProxyBindStatusCallback_OnStartBinding(IBindStatusCallback *iface, DWORD dwReserved, IBinding *pib)
static HRESULT WINAPI ProxyBindStatusCallback_OnStopBinding(IBindStatusCallback *iface, HRESULT hresult, LPCWSTR szError)
static HRESULT WINAPI ProxyBindStatusCallback_OnProgress(IBindStatusCallback *iface, ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText)
static HRESULT WINAPI ProxyBindStatusCallback_OnLowResource(IBindStatusCallback *iface, DWORD reserved)
static ProxyBindStatusCallback * impl_from_IBindStatusCallback(IBindStatusCallback *iface)
static ULONG WINAPI ProxyBindStatusCallback_AddRef(IBindStatusCallback *iface)
static HRESULT URLStartDownload(LPCWSTR szURL, LPSTREAM *ppStream, IBindStatusCallback *pBSC)
static HRESULT WINAPI BlockingBindStatusCallback_OnDataAvailable(IBindStatusCallback *iface, DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed)
static HRESULT WINAPI ProxyBindStatusCallback_GetPriority(IBindStatusCallback *iface, LONG *pnPriority)
static const IBindStatusCallbackVtbl AsyncBindStatusCallbackVtbl
static ULONG WINAPI ProxyBindStatusCallback_Release(IBindStatusCallback *iface)
static HRESULT WINAPI ProxyBindStatusCallback_GetBindInfo(IBindStatusCallback *iface, DWORD *grfBINDF, BINDINFO *pbindinfo)
static HRESULT WINAPI ProxyBindStatusCallback_OnDataAvailable(IBindStatusCallback *iface, DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed)
static HRESULT WINAPI ProxyBindStatusCallback_QueryInterface(IBindStatusCallback *iface, REFIID riid, void **ppv)
static HRESULT WINAPI ProxyBindStatusCallback_OnObjectAvailable(IBindStatusCallback *iface, REFIID riid, IUnknown *punk)
static const IBindStatusCallbackVtbl BlockingBindStatusCallbackVtbl
static HRESULT WINAPI AsyncBindStatusCallback_GetBindInfo(IBindStatusCallback *iface, DWORD *grfBINDF, BINDINFO *pbindinfo)
HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbscPrevious, DWORD dwReserved)