我无法在我的BHO中打开一个新的CAxWindow,我可以看到“microsoft.com”的请求被解雇但没有显示窗口。 我尝试了很多不同的方法,这是我的最后一个,任何人都有一个线索是什么问题?
感谢。
CAxWindow m_axWindow;
CRect rc;
HWND wndIE = NULL;
m_pWebBrowser->get_HWND((SHANDLE_PTR*)&wndIE);
GetWindowRect(wndIE, &rc);
CSize sz = CSize(100, 200);
CRect rcPage = new CRect(10, 10, 10, 10);
m_axWindow.Create(wndIE, rcPage, _TEXT("http://www.microsoft.com"), WS_POPUP | WS_TABSTOP, 0, 0U, 0);
HRESULT hRet = m_axWindow.QueryControl(IID_IWebBrowser2, (void**)&m_pWebBrowser);
答案 0 :(得分:0)
我认为m_axWindow.Create
会创建一个子窗口。在通话结束后检查WS_CHILD
的样式。您可能需要先创建一个普通的弹出式顶级窗口,然后使用该弹出窗口作为父窗口创建CAxWindow
,而不是wndIE
。确保在弹出窗口中也ShowWindow
。