23#define NONAMELESSUNION
60 static const char *
const BINDINFOF_str[] = {
62 "BINDINFOF_URLENCODESTGMEDDATA",
63 "BINDINFOF_URLENCODEDEXTRAINFO"
66 static const char *
const BINDVERB_str[] = {
87 bi->stgmedData.tymed, bi->stgmedData.u.hGlobal, bi->stgmedData.pUnkForRelease,
88 bi->grfBindInfoF > BINDINFOF_URLENCODEDEXTRAINFO
89 ?
"unknown" : BINDINFOF_str[bi->grfBindInfoF],
90 bi->dwBindVerb > BINDVERB_CUSTOM
91 ?
"unknown" : BINDVERB_str[bi->dwBindVerb],
93 bi->cbstgmedData, bi->dwOptions, bi->dwOptionsFlags, bi->dwCodePage,
94 bi->securityAttributes.nLength,
95 bi->securityAttributes.lpSecurityDescriptor,
96 bi->securityAttributes.bInheritHandle,
98 bi->pUnk, bi->dwReserved
105 DISPPARAMS dispparams = {&
arg,
NULL, 1, 0};
114 if (statuscode &&
str && *
str) {
127 if(
This->doc_host->frame)
128 IOleInPlaceFrame_SetStatusText(
This->doc_host->frame,
buffer);
155 DISPPARAMS dwl_dp = {
NULL};
156 TRACE(
"(%x)\n", is_downloading);
157 dochost->
busy = is_downloading ? VARIANT_TRUE : VARIANT_FALSE;
173 *
ppv = &
This->IBindStatusCallback_iface;
175 TRACE(
"(%p)->(IID_IBindStatusCallback %p)\n",
This,
ppv);
176 *
ppv = &
This->IBindStatusCallback_iface;
179 *
ppv = &
This->IHttpNegotiate_iface;
181 TRACE(
"(%p)->(IID_IWindowForBindingUI %p)\n",
This,
ppv);
182 *
ppv = &
This->IHttpSecurity_iface;
185 *
ppv = &
This->IHttpSecurity_iface;
215 IOleClientSite_Release(&
This->doc_host->IOleClientSite_iface);
217 IBinding_Release(
This->binding);
235 This->binding = pbind;
236 IBinding_AddRef(
This->binding);
263 hres = IBinding_QueryInterface(binding, &IID_IWinInetHttpInfo, (
void**)&http_info);
269 IWinInetHttpInfo_Release(http_info);
282 TRACE(
"(%p)->(%d %d %d %s)\n",
This, ulProgress, ulProgressMax, ulStatusCode,
285 switch(ulStatusCode) {
286 case BINDSTATUS_REDIRECTING:
288 case BINDSTATUS_BEGINDOWNLOADDATA:
295 case BINDSTATUS_FINDINGRESOURCE:
296 case BINDSTATUS_ENDDOWNLOADDATA:
297 case BINDSTATUS_SENDINGREQUEST:
301 case BINDSTATUS_CONNECTING:
302 case BINDSTATUS_CACHEFILENAMEAVAILABLE:
303 case BINDSTATUS_CLASSIDAVAILABLE:
304 case BINDSTATUS_MIMETYPEAVAILABLE:
305 case BINDSTATUS_BEGINSYNCOPERATION:
306 case BINDSTATUS_ENDSYNCOPERATION:
309 FIXME(
"status code %u\n", ulStatusCode);
317 VARIANT var_status_code, var_frame_name, var_url;
318 DISPPARAMS dispparams;
322 dispparams.cArgs = 5;
323 dispparams.cNamedArgs = 0;
324 dispparams.rgdispidNamedArgs =
NULL;
325 dispparams.rgvarg =
params;
339 hres = IHTMLWindow2_get_name(win2, &
V_BSTR(&var_frame_name));
357 FIXME(
"Navigate to error page\n");
372 if(!
This->doc_host->olecmd)
377 IOleClientSite_Release(&
This->doc_host->IOleClientSite_iface);
380 IBinding_Release(
This->binding);
387 DWORD *grfBINDF, BINDINFO *pbindinfo)
391 TRACE(
"(%p)->(%p %p)\n",
This, grfBINDF, pbindinfo);
393 *grfBINDF = BINDF_ASYNCHRONOUS;
395 if(
This->post_data) {
396 pbindinfo->dwBindVerb = BINDVERB_POST;
398 pbindinfo->stgmedData.tymed = TYMED_HGLOBAL;
399 pbindinfo->stgmedData.u.hGlobal =
This->post_data;
400 pbindinfo->cbstgmedData =
This->post_data_len;
401 pbindinfo->stgmedData.pUnkForRelease = (
IUnknown*)&
This->IBindStatusCallback_iface;
402 IBindStatusCallback_AddRef(&
This->IBindStatusCallback_iface);
412 FIXME(
"(%p)->(%08x %d %p %p)\n",
This, grfBSCF,
dwSize, pformatetc, pstgmed);
449 return IBindStatusCallback_QueryInterface(&
This->IBindStatusCallback_iface,
riid,
ppv);
455 return IBindStatusCallback_AddRef(&
This->IBindStatusCallback_iface);
461 return IBindStatusCallback_Release(&
This->IBindStatusCallback_iface);
483 LPWSTR *pszAdditionalRequestHeaders)
487 debugstr_w(szRequestHeaders), pszAdditionalRequestHeaders);
507 return IBindStatusCallback_QueryInterface(&
This->IBindStatusCallback_iface,
riid,
ppv);
513 return IBindStatusCallback_AddRef(&
This->IBindStatusCallback_iface);
519 return IBindStatusCallback_Release(&
This->IBindStatusCallback_iface);
531 *phwnd =
This->doc_host->frame_hwnd;
562 ret->post_data_len = post_data_len;
565 ret->doc_host = doc_host;
580 VARIANT var_url, var_flags, var_frame_name, var_post_data, var_post_data2, var_headers;
581 DISPPARAMS dispparams;
586 dispparams.cArgs = 7;
587 dispparams.cNamedArgs = 0;
588 dispparams.rgdispidNamedArgs =
NULL;
589 dispparams.rgvarg =
params;
619 V_I4(&var_flags) = 0;
646 static const WCHAR wszURLProtocol[] = {
'U',
'R',
'L',
' ',
'P',
'r',
'o',
't',
'o',
'c',
'o',
'l',0};
663 memset(&exec_info, 0,
sizeof(exec_info));
664 exec_info.
cbSize =
sizeof(exec_info);
684 WARN(
"UrlApplyScheme failed: %08x\n",
hres);
699 IMoniker_AddRef(mon);
706 hres = IMoniker_GetDisplayName(mon, 0,
NULL, &display_name);
708 FIXME(
"GetDisplayName failed: %08x\n",
hres);
709 IMoniker_Release(mon);
716 IMoniker_Release(mon);
727 IUnknown_Release(unk);
731 FIXME(
"BindToObject failed: %08x\n",
hres);
734 IMoniker_Release(mon);
740 VARIANT headers_var, post_data_var;
768 WARN(
"SuprtNavigate failed: %08x\n",
hres);
796 if(!
This->doc_navigate) {
805 TRACE(
"Navigation canceled\n");
810 hres = IUnknown_QueryInterface(
This->doc_navigate, &IID_IHTMLPrivateWindow, (
void**)&priv_window);
813 IHTMLPrivateWindow_Release(priv_window);
815 WARN(
"Could not get IHTMLPrivateWindow iface: %08x\n",
hres);
826 task = heap_alloc_zero(
sizeof(*task));
859 TRACE(
"Navigation canceled\n");
889 FIXME(
"Navigation canceled\n");
894 This->busy = VARIANT_FALSE;
905 IOleInPlaceFrame_EnableModeless(
This->frame,
FALSE);
910 IOleInPlaceFrame_EnableModeless(
This->frame,
TRUE);
912 IBindCtx_Release(bindctx);
946 ULONG post_data_len = 0;
976 This->ready_state = READYSTATE_LOADING;
978 if(
This->doc_navigate) {
990 WARN(
"UrlApplyScheme failed: %08x\n",
hres);
996 post_data_len,
TRUE);
1017 ULONG post_data_len = 0;
1025 hres = IMoniker_GetDisplayName(mon, 0,
NULL, &
url);
1027 FIXME(
"GetDisplayName failed: %08x\n",
hres);
1029 hres = IBindStatusCallback_QueryInterface(
callback, &IID_IHttpNegotiate,
1032 static const WCHAR null_string[] = {0};
1034 IHttpNegotiate_BeginningTransaction(
http_negotiate, null_string, null_string, 0,
1039 memset(&bindinfo, 0,
sizeof(bindinfo));
1040 bindinfo.cbSize =
sizeof(bindinfo);
1044 if(bindinfo.dwBindVerb == BINDVERB_POST) {
1045 post_data_len = bindinfo.cbstgmedData;
1047 post_data = bindinfo.stgmedData.u.hGlobal;
1050 if(
This->doc_navigate) {
1055 IBindStatusCallback_Release(&
bsc->IBindStatusCallback_iface);
1070 static const WCHAR wszAboutBlank[] = {
'a',
'b',
'o',
'u',
't',
':',
'b',
'l',
'a',
'n',
'k',0};
1071 static const WCHAR wszStartPage[] = {
'S',
't',
'a',
'r',
't',
' ',
'P',
'a',
'g',
'e',0};
1072 static const WCHAR wszSubKey[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
1073 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
1074 'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\\',
1081 size =
sizeof(wszPageName);
1097 if(!
This->doc_navigate) {
1098 FIXME(
"unsupported doc_navigate FALSE\n");
1102 This->travellog.loading_pos = travellog_pos;
1110 hres = IUnknown_QueryInterface(
This->document, &IID_IPersistHistory, (
void**)&persist_history);
1115 IStream_Seek(
entry->stream,
li, STREAM_SEEK_SET,
NULL);
1117 hres = IPersistHistory_LoadHistory(persist_history,
entry->stream,
NULL);
1118 IPersistHistory_Release(persist_history);
1124 if(!
This->travellog.position) {
1125 WARN(
"No history available\n");
1134 if(
This->travellog.position >=
This->travellog.length) {
1135 WARN(
"No history available\n");
1144 FIXME(
"semi-stub\n");
1161 return IUnknown_QueryInterface(
This->outer,
riid,
ppv);
1167 return IUnknown_AddRef(
This->outer);
1173 return IUnknown_Release(
This->outer);
1199 TRACE(
"(%p)->(%08x %p %p %p)\n",
This, grfHLNF, pbc, pibsc, pihlNavigate);
1202 FIXME(
"unsupported grfHLNF=%08x\n", grfHLNF);
1206 IHlink_GetMonikerReference(pihlNavigate, 1, &mon, &
location);
1215 if(grfHLNF & HLNF_OPENINNEWWINDOW) {
1216 FIXME(
"Not supported HLNF_OPENINNEWWINDOW\n");
1260 return IUnknown_QueryInterface(
This->outer,
riid,
ppv);
1266 return IUnknown_AddRef(
This->outer);
1272 return IUnknown_Release(
This->outer);
1285 FIXME(
"(%p)->(%p)\n",
This, ppszFrameName);
1292 FIXME(
"(%p)->(%p)\n",
This, ppunkParent);
1301 ppunkContextFrame,
dwFlags, ppunkTargetFrame);
1315 FIXME(
"(%p)->(%p)\n",
This, ppszFrameSrc);
1322 FIXME(
"(%p)->(%p)\n",
This, ppContainer);
1350 FIXME(
"(%p)->(%p %p)\n",
This, pdwWidth, pdwHeight);
1357 FIXME(
"(%p)->(%u %p)\n",
This, cLength, pulData);
1364 FIXME(
"(%p)->(%p)\n",
This, pUnkChildFrame);
1371 FIXME(
"(%p)->(%p)\n",
This, pUnkChildFrame);
1403 return IUnknown_QueryInterface(
This->outer,
riid,
ppv);
1409 return IUnknown_AddRef(
This->outer);
1415 return IUnknown_Release(
This->outer);
1428 FIXME(
"(%p)->(%p)\n",
This, ppszFrameName);
1435 FIXME(
"(%p)->(%p)\n",
This, ppunkParent);
1456 FIXME(
"(%p)->(%p)\n",
This, ppContainer);
1484 FIXME(
"(%p)->(%p %p)\n",
This, pdwWidth, pdwHeight);
1528 return IUnknown_QueryInterface(
This->outer,
riid,
ppv);
1534 return IUnknown_AddRef(
This->outer);
1540 return IUnknown_Release(
This->outer);
1562 FIXME(
"(%p)->(%p)\n",
This, pUnkChildFrame);
1569 FIXME(
"(%p)->(%p)\n",
This, pUnkChildFrame);
1577 FIXME(
"(%p)->(%x %p %p %s %s %s)\n",
This, grfHLNF, pbc, pibsc,
debugstr_w(pszTargetName),
1585 FIXME(
"(%p)->(%d %p)\n",
This, dwID, ppunkBrowser);
1596 TRACE(
"(%p)->(%x %p %p %s %p %s)\n",
This, grfHLNF, pbc, pibsc,
debugstr_w(pszTargetName),
1610 IMoniker_Release(mon);
1635 return IUnknown_QueryInterface(
This->outer,
riid,
ppv);
1641 return IUnknown_AddRef(
This->outer);
1647 return IUnknown_Release(
This->outer);
1670 *
ppv = &
This->IHlinkFrame_iface;
1673 *
ppv = &
This->ITargetFrame_iface;
1676 *
ppv = &
This->ITargetFrame2_iface;
1679 *
ppv = &
This->ITargetFramePriv2_iface;
1681 TRACE(
"(%p)->(IID_ITargetFramePriv2 %p)\n",
This,
ppv);
1682 *
ppv = &
This->ITargetFramePriv2_iface;
1684 TRACE(
"(%p)->(IID_IWebBrowserPriv2IE9 %p)\n",
This,
ppv);
1685 *
ppv = &
This->IWebBrowserPriv2IE9_iface;
1702 This->outer = outer;
1703 This->doc_host = doc_host;
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static const TCHAR empty_str[]
#define RegCloseKey(hKey)
static const WCHAR dwWidth[]
static const WCHAR dwHeight[]
LONG WINAPI RegOpenKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
static WCHAR * heap_strdupW(const WCHAR *str)
void call_sink(ConnectionPoint *This, DISPID dispid, DISPPARAMS *dispparams)
#define IDS_STATUSFMT_MAXLEN
#define IDS_STATUSFMT_FIRST
HRESULT WINAPI SafeArrayGetUBound(SAFEARRAY *psa, UINT nDim, LONG *plUbound)
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
SAFEARRAY *WINAPI SafeArrayCreateVector(VARTYPE vt, LONG lLbound, ULONG cElements)
UINT WINAPI SafeArrayGetElemsize(SAFEARRAY *psa)
HRESULT WINAPI SafeArrayDestroy(SAFEARRAY *psa)
HRESULT WINAPI PathCreateFromUrlW(LPCWSTR pszUrl, LPWSTR pszPath, LPDWORD pcchPath, DWORD dwReserved)
HRESULT WINAPI UrlApplySchemeW(LPCWSTR pszIn, LPWSTR pszOut, LPDWORD pcchOut, DWORD dwFlags)
BOOL WINAPI PathIsURLW(LPCWSTR lpstrPath)
HRESULT WINAPI CoInternetParseUrl(LPCWSTR pwzUrl, PARSEACTION ParseAction, DWORD dwFlags, LPWSTR pszResult, DWORD cchResult, DWORD *pcchResult, DWORD dwReserved)
#define INTERNET_MAX_URL_LENGTH
void set_doc_state(DocHost *This, READYSTATE doc_state)
void push_dochost_task(DocHost *This, task_header_t *task, task_proc_t proc, task_destr_t destr, BOOL send)
void on_commandstate_change(DocHost *doc_host, LONG command, BOOL enable)
void deactivate_document(DocHost *This)
HRESULT dochost_object_available(DocHost *This, IUnknown *doc)
void abort_dochost_tasks(DocHost *This, task_proc_t proc)
void create_doc_view_hwnd(DocHost *This)
void update_navigation_commands(DocHost *dochost)
#define DISPID_BEFORENAVIGATE2
GLuint GLuint GLsizei GLenum type
GLenum const GLfloat * params
HGLOBAL NTAPI GlobalFree(HGLOBAL hMem)
HGLOBAL NTAPI GlobalAlloc(UINT uFlags, SIZE_T dwBytes)
HRESULT navigate_url(DocHost *This, LPCWSTR url, const VARIANT *Flags, const VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
static HRESULT WINAPI TargetFramePriv2_FindFrameInContext(ITargetFramePriv2 *iface, LPCWSTR pszTargetName, IUnknown *punkContextFrame, DWORD dwFlags, IUnknown **ppunkTargetFrame)
static HRESULT WINAPI TargetFrame2_GetFrameName(ITargetFrame2 *iface, LPWSTR *ppszFrameName)
static HRESULT WINAPI TargetFrame_GetFrameName(ITargetFrame *iface, LPWSTR *ppszFrameName)
static HRESULT WINAPI HlinkFrame_UpdateHlink(IHlinkFrame *iface, ULONG uHLID, IMoniker *pimkTarget, LPCWSTR pwzLocation, LPCWSTR pwzFriendlyName)
static HlinkFrame * impl_from_ITargetFramePriv2(ITargetFramePriv2 *iface)
static ULONG WINAPI BindStatusCallback_AddRef(IBindStatusCallback *iface)
static void doc_navigate_task_destr(task_header_t *t)
static BOOL try_application_url(LPCWSTR url)
static HRESULT navigate_bsc(DocHost *This, BindStatusCallback *bsc, IMoniker *mon)
static HRESULT WINAPI HlinkFrame_Navigate(IHlinkFrame *iface, DWORD grfHLNF, LPBC pbc, IBindStatusCallback *pibsc, IHlink *pihlNavigate)
static HRESULT WINAPI BindStatusCallback_OnObjectAvailable(IBindStatusCallback *iface, REFIID riid, IUnknown *punk)
static const ITargetFrame2Vtbl TargetFrame2Vtbl
static void html_window_navigate(DocHost *This, IHTMLPrivateWindow *window, BSTR url, BSTR headers, SAFEARRAY *post_data)
static HRESULT WINAPI BindStatusCallback_OnDataAvailable(IBindStatusCallback *iface, DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed)
static void on_before_navigate2(DocHost *This, LPCWSTR url, SAFEARRAY *post_data, LPWSTR headers, VARIANT_BOOL *cancel)
void handle_navigation_error(DocHost *doc_host, HRESULT hres, BSTR url, IHTMLWindow2 *win2)
static HRESULT WINAPI TargetFrame_RemoteNavigate(ITargetFrame *iface, ULONG cLength, ULONG *pulData)
static HRESULT WINAPI BindStatusCallback_OnLowResource(IBindStatusCallback *iface, DWORD reserved)
static HRESULT WINAPI HttpSecurity_QueryInterface(IHttpSecurity *iface, REFIID riid, void **ppv)
static HRESULT WINAPI TargetFrame_OnChildFrameDeactivate(ITargetFrame *iface, IUnknown *pUnkChildFrame)
static HRESULT WINAPI WebBrowserPriv2IE9_NavigateWithBindCtx2(IWebBrowserPriv2IE9 *iface, IUri *uri, VARIANT *flags, VARIANT *target_frame, VARIANT *post_data, VARIANT *headers, IBindCtx *bind_ctx, LPOLESTR url_fragment, DWORD unused)
static HRESULT WINAPI HlinkFrame_SetBrowseContext(IHlinkFrame *iface, IHlinkBrowseContext *pihlbc)
static HRESULT WINAPI TargetFrame2_GetFrameOptions(ITargetFrame2 *iface, DWORD *pdwFlags)
static HRESULT WINAPI TargetFrame2_QueryInterface(ITargetFrame2 *iface, REFIID riid, void **ppv)
static void dump_BINDINFO(BINDINFO *bi)
static BindStatusCallback * create_callback(DocHost *doc_host, LPCWSTR url, PBYTE post_data, ULONG post_data_len, LPCWSTR headers)
static ULONG WINAPI HttpNegotiate_AddRef(IHttpNegotiate *iface)
static BindStatusCallback * impl_from_IHttpSecurity(IHttpSecurity *iface)
static HRESULT async_doc_navigate(DocHost *This, LPCWSTR url, LPCWSTR headers, PBYTE post_data, ULONG post_data_size, BOOL async_notif)
static HRESULT create_moniker(LPCWSTR url, IMoniker **mon)
static ULONG WINAPI TargetFrame_AddRef(ITargetFrame *iface)
static HRESULT WINAPI TargetFrame2_SetFrameMargins(ITargetFrame2 *iface, DWORD dwWidth, DWORD dwHeight)
static HRESULT WINAPI HlinkFrame_QueryInterface(IHlinkFrame *iface, REFIID riid, void **ppv)
static HRESULT WINAPI TargetFrame_OnChildFrameActivate(ITargetFrame *iface, IUnknown *pUnkChildFrame)
static HRESULT WINAPI HttpSecurity_GetWindow(IHttpSecurity *iface, REFGUID rguidReason, HWND *phwnd)
static HRESULT WINAPI TargetFrame2_SetFrameSrc(ITargetFrame2 *iface, LPCWSTR pszFrameSrc)
static const IWebBrowserPriv2IE9Vtbl WebBrowserPriv2IE9Vtbl
static HRESULT WINAPI TargetFrame2_GetFrameMargins(ITargetFrame2 *iface, DWORD *pdwWidth, DWORD *pdwHeight)
static ULONG WINAPI BindStatusCallback_Release(IBindStatusCallback *iface)
static HRESULT WINAPI TargetFrame_QueryInterface(ITargetFrame *iface, REFIID riid, void **ppv)
static HRESULT WINAPI TargetFrame_GetFramesContainer(ITargetFrame *iface, IOleContainer **ppContainer)
static HRESULT navigate_history(DocHost *This, unsigned travellog_pos)
static HRESULT WINAPI BindStatusCallback_GetBindInfo(IBindStatusCallback *iface, DWORD *grfBINDF, BINDINFO *pbindinfo)
static const IBindStatusCallbackVtbl BindStatusCallbackVtbl
static HRESULT WINAPI BindStatusCallback_GetPriority(IBindStatusCallback *iface, LONG *pnPriority)
static HRESULT WINAPI TargetFramePriv2_NavigateHack(ITargetFramePriv2 *iface, DWORD grfHLNF, LPBC pbc, IBindStatusCallback *pibsc, LPCWSTR pszTargetName, LPCWSTR pszUrl, LPCWSTR pszLocation)
static const ITargetFramePriv2Vtbl TargetFramePriv2Vtbl
static HRESULT WINAPI HlinkFrame_OnNavigate(IHlinkFrame *iface, DWORD grfHLNF, IMoniker *pimkTarget, LPCWSTR pwzLocation, LPCWSTR pwzFriendlyName, DWORD dwreserved)
static HRESULT WINAPI HttpNegotiate_BeginningTransaction(IHttpNegotiate *iface, LPCWSTR szURL, LPCWSTR szHeaders, DWORD dwReserved, LPWSTR *pszAdditionalHeaders)
static ULONG WINAPI HttpSecurity_Release(IHttpSecurity *iface)
static const IHlinkFrameVtbl HlinkFrameVtbl
HRESULT get_location_url(DocHost *This, BSTR *ret)
static ULONG WINAPI HlinkFrame_Release(IHlinkFrame *iface)
HRESULT go_home(DocHost *This)
static HlinkFrame * impl_from_ITargetFrame2(ITargetFrame2 *iface)
static HRESULT WINAPI HlinkFrame_GetBrowseContext(IHlinkFrame *iface, IHlinkBrowseContext **ppihlbc)
static HRESULT WINAPI HttpSecurity_OnSecurityProblem(IHttpSecurity *iface, DWORD dwProblem)
static void doc_navigate_proc(DocHost *This, task_header_t *t)
static ULONG WINAPI TargetFramePriv2_Release(ITargetFramePriv2 *iface)
static ULONG WINAPI TargetFrame2_Release(ITargetFrame2 *iface)
static HRESULT WINAPI TargetFrame2_GetFrameSrc(ITargetFrame2 *iface, LPWSTR *ppszFrameSrc)
static const ITargetFrameVtbl TargetFrameVtbl
static void navigate_bsc_proc(DocHost *This, task_header_t *t)
static void set_status_text(BindStatusCallback *This, ULONG statuscode, LPCWSTR str)
static ULONG WINAPI HttpNegotiate_Release(IHttpNegotiate *iface)
static HlinkFrame * impl_from_ITargetFrame(ITargetFrame *iface)
BOOL HlinkFrame_QI(HlinkFrame *This, REFIID riid, void **ppv)
static HlinkFrame * impl_from_IHlinkFrame(IHlinkFrame *iface)
static HRESULT WINAPI TargetFrame_GetFrameSrc(ITargetFrame *iface, LPWSTR *ppszFrameSrc)
static const IHttpSecurityVtbl HttpSecurityVtbl
static HRESULT WINAPI TargetFrame2_GetTargetAlias(ITargetFrame2 *iface, LPCWSTR pszTargetName, LPWSTR *ppszTargetAlias)
static HRESULT WINAPI TargetFramePriv2_OnChildFrameDeactivate(ITargetFramePriv2 *iface, IUnknown *pUnkChildFrame)
static HRESULT WINAPI BindStatusCallback_OnStopBinding(IBindStatusCallback *iface, HRESULT hresult, LPCWSTR szError)
static HRESULT WINAPI TargetFramePriv2_QueryInterface(ITargetFramePriv2 *iface, REFIID riid, void **ppv)
static HRESULT WINAPI TargetFrame_SetFrameMargins(ITargetFrame *iface, DWORD dwWidth, DWORD dwHeight)
static const WCHAR emptyW[]
static HRESULT WINAPI HttpNegotiate_OnResponse(IHttpNegotiate *iface, DWORD dwResponseCode, LPCWSTR szResponseHeaders, LPCWSTR szRequestHeaders, LPWSTR *pszAdditionalRequestHeaders)
static HRESULT WINAPI TargetFramePriv2_AggregatedNavigation2(ITargetFramePriv2 *iface, DWORD grfHLNF, LPBC pbc, IBindStatusCallback *pibsc, LPCWSTR pszTargetName, IUri *pUri, LPCWSTR pszLocation)
HRESULT go_back(DocHost *This)
static HRESULT WINAPI TargetFrame_SetFrameOptions(ITargetFrame *iface, DWORD dwFlags)
static HRESULT WINAPI WebBrowserPriv2IE9_QueryInterface(IWebBrowserPriv2IE9 *iface, REFIID riid, void **ppv)
static HRESULT WINAPI TargetFramePriv2_OnChildFrameActivate(ITargetFramePriv2 *iface, IUnknown *pUnkChildFrame)
static HRESULT WINAPI TargetFrame2_GetFramesContainer(ITargetFrame2 *iface, IOleContainer **ppContainer)
static HRESULT WINAPI TargetFramePriv2_FindBrowserByIndex(ITargetFramePriv2 *iface, DWORD dwID, IUnknown **ppunkBrowser)
static DWORD get_http_status_code(IBinding *binding)
static HRESULT WINAPI HttpNegotiate_QueryInterface(IHttpNegotiate *iface, REFIID riid, void **ppv)
static HlinkFrame * impl_from_IWebBrowserPriv2IE9(IWebBrowserPriv2IE9 *iface)
static const IHttpNegotiateVtbl HttpNegotiateVtbl
static ULONG WINAPI WebBrowserPriv2IE9_Release(IWebBrowserPriv2IE9 *iface)
static HRESULT WINAPI TargetFrame_FindFrame(ITargetFrame *iface, LPCWSTR pszTargetName, IUnknown *ppunkContextFrame, DWORD dwFlags, IUnknown **ppunkTargetFrame)
static HRESULT WINAPI TargetFrame_GetParentFrame(ITargetFrame *iface, IUnknown **ppunkParent)
void notify_download_state(DocHost *dochost, BOOL is_downloading)
static HRESULT WINAPI TargetFrame_SetFrameName(ITargetFrame *iface, LPCWSTR pszFrameName)
static HRESULT WINAPI TargetFrame_SetFrameSrc(ITargetFrame *iface, LPCWSTR pszFrameSrc)
static HRESULT WINAPI BindStatusCallback_OnProgress(IBindStatusCallback *iface, ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText)
static ULONG WINAPI TargetFrame2_AddRef(ITargetFrame2 *iface)
static BindStatusCallback * impl_from_IBindStatusCallback(IBindStatusCallback *iface)
static HRESULT WINAPI TargetFrame2_GetParentFrame(ITargetFrame2 *iface, IUnknown **ppunkParent)
void HlinkFrame_Init(HlinkFrame *This, IUnknown *outer, DocHost *doc_host)
static ULONG WINAPI WebBrowserPriv2IE9_AddRef(IWebBrowserPriv2IE9 *iface)
static HRESULT WINAPI TargetFrame_GetFrameMargins(ITargetFrame *iface, DWORD *pdwWidth, DWORD *pdwHeight)
static BindStatusCallback * impl_from_IHttpNegotiate(IHttpNegotiate *iface)
static ULONG WINAPI TargetFrame_Release(ITargetFrame *iface)
static HRESULT WINAPI TargetFrame2_SetFrameName(ITargetFrame2 *iface, LPCWSTR pszFrameName)
static ULONG WINAPI TargetFramePriv2_AddRef(ITargetFramePriv2 *iface)
static void navigate_bsc_task_destr(task_header_t *t)
static ULONG WINAPI HlinkFrame_AddRef(IHlinkFrame *iface)
static HRESULT WINAPI TargetFrame2_FindFrame(ITargetFrame2 *iface, LPCWSTR pszTargetName, DWORD dwFlags, IUnknown **ppunkTargetFrame)
static HRESULT WINAPI BindStatusCallback_OnStartBinding(IBindStatusCallback *iface, DWORD dwReserved, IBinding *pbind)
static HRESULT WINAPI TargetFramePriv2_FindFrameDownwards(ITargetFramePriv2 *iface, LPCWSTR pszTargetName, DWORD dwFlags, IUnknown **ppunkTargetFrame)
HRESULT set_dochost_url(DocHost *This, const WCHAR *url)
static HRESULT navigate_hlink(DocHost *This, IMoniker *mon, IBindCtx *bindctx, IBindStatusCallback *callback)
static ULONG WINAPI HttpSecurity_AddRef(IHttpSecurity *iface)
static HRESULT WINAPI BindStatusCallback_QueryInterface(IBindStatusCallback *iface, REFIID riid, void **ppv)
HRESULT go_forward(DocHost *This)
static HRESULT WINAPI TargetFrame2_SetFrameOptions(ITargetFrame2 *iface, DWORD dwFlags)
static HRESULT WINAPI TargetFrame_GetFrameOptions(ITargetFrame *iface, DWORD *pdwFlags)
HINSTANCE ieframe_instance
VOID WINAPI CoTaskMemFree(LPVOID ptr)
LPVOID WINAPI CoTaskMemAlloc(SIZE_T size)
#define memcpy(s1, s2, n)
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static IPrintDialogCallback callback
static const char * debugstr_variant(const VARIANT *var)
static IHTMLWindow2 * window
static const CHAR post_data[]
static IHttpNegotiate2 http_negotiate
static IBindStatusCallbackEx bsc
static BOOL bind_to_object
static const WCHAR SZ_HTML_CLIENTSITE_OBJECTPARAM[]
interface IHTMLWindow2 IHTMLWindow2
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
interface IBindCtx * LPBC
BSTR WINAPI SysAllocString(LPCOLESTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
#define IsEqualGUID(rguid1, rguid2)
vector< Header * > headers
BOOL WINAPI DECLSPEC_HOTPATCH ShellExecuteExW(LPSHELLEXECUTEINFOW sei)
#define URL_APPLY_GUESSSCHEME
#define URL_APPLY_DEFAULT
#define URL_APPLY_GUESSFILE
TCHAR file_path[MAX_PATH]
IBindStatusCallback IBindStatusCallback_iface
IHttpSecurity IHttpSecurity_iface
IHttpNegotiate IHttpNegotiate_iface
ConnectionPointContainer cps
IOleClientSite IOleClientSite_iface
#define CONTAINING_RECORD(address, type, field)
HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **ppmk)
HRESULT WINAPI CreateURLMonikerEx2(IMoniker *pmkContext, IUri *pUri, IMoniker **ppmk, DWORD dwFlags)
HRESULT WINAPI CreateAsyncBindCtx(DWORD reserved, IBindStatusCallback *callback, IEnumFORMATETC *format, IBindCtx **pbind)
void WINAPI ReleaseBindInfo(BINDINFO *pbindinfo)
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)
#define DISPID_NAVIGATEERROR
#define DISPID_DOWNLOADCOMPLETE
#define DISPID_DOWNLOADBEGIN
#define DISPID_STATUSTEXTCHANGE
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
#define HTTP_QUERY_FLAG_NUMBER
#define HTTP_QUERY_STATUS_CODE
#define HKEY_CURRENT_USER
#define HKEY_CLASSES_ROOT
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
_Must_inspect_result_ _In_ ULONG Flags