我利用IWebBrowser2这个东西想得到网页中的源代码,为什么返回总是null呢,希望大家帮帮我

zscp 2005-08-11 11:35:50
HRESULT hr = CoCreateInstance(CLSID_WebBrowser, NULL, CLSCTX_INPROC,
IID_IOleObject, (void**)&m_spOleObjectPreloadBrowser);
if (FAILED(hr)){
TRACE(_T("Can not create WebBrowser\r\n"));
return ;
}
CComQIPtr<IWebBrowser2> pWebBrowser(m_spOleObjectPreloadBrowser);
if(pWebBrowser){
CComBSTR bstrURL = _T("about:blank");
COleSafeArray vPostData;
pWebBrowser->Navigate(bstrURL,
COleVariant((long) 0, VT_I4),
COleVariant(_T(""), VT_BSTR),
vPostData,
COleVariant(_T(""), VT_BSTR));
}
CComPtr<IDispatch> spDoc;
pWebBrowser->get_Document(&spDoc);
spDoc返回总是NULL
...全文
87 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zscp 2005-08-11
  • 打赏
  • 举报
回复
兄弟,我不想要界面,我只是想得到网页中的源代码,你给我的这个是有窗口的
honker110 2005-08-11
  • 打赏
  • 举报
回复
This is the code for implementing the "View Source" option in Internet Explorer


void CMyBrowser::OnViewSource()
{
CWnd* pWnd = NULL;

CWnd* pwndShell = m_WebBrowser2.GetWindow(GW_CHILD); // get the webbrowser window pointer

if (pwndShell)
{
pWnd = pwndShell->GetWindow(GW_CHILD); //get the child window pointer
}

if(pWnd != NULL)
{
WPARAM wParam = MAKELONG(IDM_VIEWSOURCE, 1); //convert to unsigned 32 bit value and pass it to WPARAM
pWnd->SendMessage(WM_COMMAND, wParam, (LPARAM)pWndHTML->m_hWnd); //cool send a message to retreive the source.
}
}
是http://www.vckbase.com/document/上面的一篇文章啊

18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧