我利用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
...全文
56 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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/上面的一篇文章啊
回复
相关推荐
发帖
网络编程
创建于2007-09-28

1.8w+

社区成员

VC/MFC 网络编程
申请成为版主
帖子事件
创建了帖子
2005-08-11 11:35
社区公告
暂无公告