VB制作BHO写下载器或病毒会用到

VB制作BHO写下载器或病毒会用到,第1张

概述VB制作BHO 第一步 打开记事本,把下面代码复制进去,然后保存为IObjectWithSiteTLB.odl。 [ uuid(CF9D9B76-EC4B-470D-99DC-AEC6F36A9261), helpstring("VB IObjectWithSite Interface"), version(1.0) ] library IObjectWithSiteTLB { importlib

VB制作BHO

第一步

打开记事本,把下面代码复制进去,然后保存为IObjectWithSiteTLB.odl。

[

uuID(CF9D9B76-EC4B-470D-99DC-AEC6F36A9261),

helpstring("VB IObjectWithSite Interface"),

version(1.0)

]

library IObjectWithSiteTLB

{

importlib("stdole2.tlb");

typedef [public] long GUIDPtr;

typedef [public] long VOIDPtr;

[

uuID(00000000-0000-0000-C000-000000000046),

odl

]

interface IUnkNownVB

{

HRESulT @R_301_5962@Interface(

[in] GUIDPtr priID,

[out] VOIDPtr *pvObj

);

long AddRef();

long Release();

}

[

uuID(FC4801A3-2BA9-11CF-A229-00AA003D7352),

odl

]

interface IObjectWithSite:IUnkNown

{

typedef IObjectWithSite *LPOBJECTWITHSITE;

HRESulT SetSite([in] IUnkNownVB* pSite);

HRESulT GetSite([in] GUIDPtr priID,[in,out] VOIDPtr* ppvObj);

}

}

代码意思我也不太懂,大概是声明接口。VB里面不能实现。

第二步

1.开始菜单——运行——CMD。

2.把MKTYPliB.EXE拖入CMD窗口。(MKTYPliB.EXE可以网上搜索一下)

3.别急着回车,在一长串文件名后面输入“ /NOCPP”。(注意有一个空格)

4.回车后,d出一个打开文件对话框。打开“第一步”中保存的IObjectWithSiteTLB.odl。

5.然后会有提示,如果成功的话,会在MKTYPliB.EXE所在文件夹下生成IObjectWithSiteTLB.tlb。

第三步

1. 打开VB6.0——新建一个工程——类型为activeX dll。

2. 引用microsoft internet controls和刚才得IObjectWithSiteTLB.tlb。

3. 输入以下代码:

Implements IObjectWithSiteTLB.IObjectWithSite

Dim WithEvents IE As InternetExplorer

Dim M_Site As IUnkNownVB

Private Sub IObjectWithSite_GetSite(ByVal PriID As IObjectWithSiteTLB.GUIDPtr,PPVobj As IObjectWithSiteTLB.VOIDPtr)

M_Site.@R_301_5962@Interface PriID,PPVobj

End Sub

Private Sub IObjectWithSite_SetSite(ByVal pSite As IObjectWithSiteTLB.IUnkNownVB)

Set M_Site = pSite

Set IE = pSite

End Sub

第四步

前三步是准备工作,下面要编写你自己的代码了。

就是用webbrowser(microsoft internet controls)实现对IE各个事件的控制

比如添加以下代码(其它事件就不一一举例了,我自己也是去网上查的):

Private Sub IE_documentComplete(ByVal pdisp As Object,URL As Variant)

MsgBox URL,vbinformation,"您好,IE为您服务。"

End Sub

编写完所有代码后,即可生成DLL,名字任意。(如:MYBHO.DLL)

第五步——注册BHO

1. 将生成的DLL拖入regsvr32.exe,提示注册成功。(regsvr32.exe在windows\system32下)

2. 开始菜单——运行——REGEDIT(打开注册表编辑器)。

3. 在注册表编辑器中,打开HKEY_CLASSES_ROOT\CLSID。然后查找“MYBHO”。

4. 找到后记下MYBHO对应的那一长串GUID.

5. 打开HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\windows\CurrentVersion\Explorer\browser Helper Objects 新建项,项的名称就是这个GUID。

第六步

全部工作完成了,现在打开IE浏览器,可以看看效果。

附注

还有几点需要说明:

1. 可以在 IE的“工具(T)”--"管理加载项下",启用/禁用你的插件或者直接到注册表的HKLM\SOFTWARE\Microsoft\windows\CurrentVersion\Explorer\browser Helper Objects\下删除相应dll的clisd即可.

2. 如果其它工程需要引用IObjectWithSiteTLB.tlb,先在注册表将其uuID(CF9D9B76-EC4B-470D-99DC-AEC6F36A9261)删除(反注册)。否则会无法引用。

(删除方法:可以再注册表中搜索IObjectWithSiteTLB.tlb。应该是在tHKEY_CLASSES_ROOT\Typelib下面)

参考文献:

1.《浅谈用vb写bho(浏览器辅助对象)》 http://blog.csdn.net/sx1989827/archive/2009/01/31/3855996.aspx 作者:sx1989827

2.《vb6下手把手教你做bho插件》 http://hi.baidu.com/itworld_boss/blog/item/f87df4d4d54be602a18bb70e.html 作者:

总结

以上是内存溢出为你收集整理的VB制作BHO写下载器或病毒用到全部内容,希望文章能够帮你解决VB制作BHO写下载器或病毒会用到所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1283428.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存