WebBrowser2 新窗口打开问题,怎么取得新窗口的URL

时间:2022-06-09 13:39:56
我在一个对话框程序中添加了web browser 控件,然后我里面所有的网页都想在这个WEB控件中打开,怎么取得新窗口的URL?我在网上找了说是在OnBeforeNavigate2Explorer1中获取,然后在OnNewWindow2Explorer1中打开,我现在的问题是OnBeforeNavigate2Explorer1会执行很多次,网页中的一些图片什么的也是有网址的,其中只有一个网址是我想要的,我怎么判断我点击后正确的跳转的网址?
在线等,先谢谢了。解决了马上结贴

3 个解决方案

#1


给WebBrowser2控件添加NewWindow3事件处理函数,然后:

void CWebBrowserDlg::NewWindow3Explorer(LPDISPATCH* ppDisp, BOOL* Cancel, unsigned long dwFlags, LPCTSTR bstrUrlContext, LPCTSTR bstrUrl)
{
*Cancel = TRUE;
m_WebBrowser2.Navigate(bstrUrl, &vtMissing, &vtMissing, &vtMissing, &vtMissing);
}

#2


void CxxDlg::NavigateComplete2Explorer1(LPDISPATCH pDisp, VARIANT* URL)

你找一下类似这样的函数

#3


codeproject有个例子,你可以下下来看一下,
http://www.codeproject.com/KB/IP/detecting_the_ie_refresh.aspx

顺便请大家看一下我的问题,也是100分求解,
http://topic.csdn.net/u/20091130/21/6cca8889-a223-4b1d-b7cc-821abe85d1e4.html

#1


给WebBrowser2控件添加NewWindow3事件处理函数,然后:

void CWebBrowserDlg::NewWindow3Explorer(LPDISPATCH* ppDisp, BOOL* Cancel, unsigned long dwFlags, LPCTSTR bstrUrlContext, LPCTSTR bstrUrl)
{
*Cancel = TRUE;
m_WebBrowser2.Navigate(bstrUrl, &vtMissing, &vtMissing, &vtMissing, &vtMissing);
}

#2


void CxxDlg::NavigateComplete2Explorer1(LPDISPATCH pDisp, VARIANT* URL)

你找一下类似这样的函数

#3


codeproject有个例子,你可以下下来看一下,
http://www.codeproject.com/KB/IP/detecting_the_ie_refresh.aspx

顺便请大家看一下我的问题,也是100分求解,
http://topic.csdn.net/u/20091130/21/6cca8889-a223-4b1d-b7cc-821abe85d1e4.html