Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在BHO内创建CAX窗口(C+;+;)_C++_Internet Explorer_Com_Activex_Bho - Fatal编程技术网

C++ 在BHO内创建CAX窗口(C+;+;)

C++ 在BHO内创建CAX窗口(C+;+;),c++,internet-explorer,com,activex,bho,C++,Internet Explorer,Com,Activex,Bho,我在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(

我在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);

我认为
m\u axWindow.Create
创建一个子窗口。在该调用之后,检查其样式是否为
WS\u CHILD
。您可能需要先创建一个普通的弹出顶级窗口,然后使用该弹出窗口作为父窗口创建一个
CAxWindow
,而不是
wndIE
。确保在弹出窗口上也执行
ShowWindow

我注意到你发布了,你解决了这个问题了吗?如果是,问题是什么?您是如何解决的?