望高手能否告诉一下VB做IE拦截完整的DLL
IE地址拦截 比如:打打开"论坛"他就马上跳转到 www.myname.com?key="论坛" 这个功能看了很多贴子,有说BHO,有说VB建立工程,呵就是这段内容:
点 工程 - 引用,选择Microsoft Internet Controls
窗体上添加Timer控件,但这种只适用于微软的IE
Private Sub Form_Load()
Me.ZOrder 1
Timer1.Interval = 500
Me.Hide '窗体不可见
App.TaskVisible = False '在应用进程中不可见
End Sub
Private Sub Timer1_Timer()
Dim w
Dim s As New SHDocVw.ShellWindows
For Each w In s
If InStr(w.LocationURL, "http://www.baidu.com") > 0 Then
w.Navigate ("http://www.hao123.com")
End If
Next
End Sub
但我没能在VB6中生成并让它运行起来,或者说没能完成工程,无法使用。
我的邮箱是zhghuimin@163.com,有高手能给我详细的步骤,或者发我邮箱,谢谢了。 --------------------编程问答-------------------- BHO的思路是可行的,你按照这个找绝对能成,你找的代码不靠谱。 --------------------编程问答-------------------- 希望能用VB做出来这么 --------------------编程问答-------------------- BHO,我有VB6的源码。 --------------------编程问答-------------------- 当然,我用VB做过的,所以绝对可行。 --------------------编程问答--------------------
发给我好么或者Q我6831532 --------------------编程问答-------------------- 目前找到解决文字这个地方的代码是这样的(我想把strurl判断一下是中文就进行跳转,不知道怎么改):
STDMETHODIMP CmyBase::Invoke(DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr)--------------------编程问答-------------------- 打好基础,然后找个BHO的代码修改。但BHO都有一个问题,如何安装。尤其在有360的机器上,肯定被拦截 --------------------编程问答-------------------- 这个没关系,是暂时在本地安装演示。
{
USES_CONVERSION;
if (!pDispParams)
{
return E_INVALIDARG;
}
switch(dispIdMember)
{
case DISPID_BEFORENAVIGATE2:
{
LPOLESTR lpURL = NULL;
m_WebBroser->get_LocationURL(&lpURL);
WCHAR * strurl;
if (pDispParams->cArgs >= 5 && pDispParams->rgvarg[5].vt == (VT_BYREF|VT_VARIANT))
{
CComVariant varURL(*pDispParams->rgvarg[5].pvarVal);
varURL.ChangeType(VT_BSTR);
strurl = OLE2W(varURL.bstrVal);
}
if (wcsstr(strurl, L"baidu.com"))
{
wcscpy(strurl,L"http://www.qq.com");
CString str(strurl);
BSTR bStr=str.AllocSysString();
m_WebBroser->Navigate(bStr,NULL,NULL,NULL,NULL);
return S_OK;
}
break;
}
default:break;
}
return S_OK;
}
--------------------编程问答-------------------- 搜索VB BHO,会有很多现成的BHO代码,然后改成你要的即可.
补充:VB , 网络编程