BHO
瀏覽器輔助對象
瀏覽器輔助對象,全稱BrowserHelperObject,以下簡稱BHO,就是我們常說的IE瀏覽器插件。
BHO的目的是為了更好的幫助程序員打造個性化瀏覽器,以及為程序提供更簡潔的交互功能,現在很多IE個性化工具就是利用BHO的來實現。符合BHO介面標準的程序代碼被寫為DLL動態鏈接庫形式在註冊表裡註冊為COM對象,還要在BHO介面的註冊表入口處進行組件註冊,以後每次IE啟動時都會通過這裡描述的註冊信息調用載入這個DLL文件,而這個DLL文件就因此成為IE的一個模塊(BHO組件),與IE共享一個運行周期,直到IE被關閉。
下面採用VB6.0來創建BrowserHelperObject,實現記錄IE瀏覽網址與日期時間。
詳細過程如下:
2.1打開VB6.0,點擊菜單欄[文件]--[新建工程],在彈出的[新建工程]頁面中選擇ActiveXDLL,保存工程為TestBHO.vbp;
2.2將類模塊中的Class1改名為TestB-HO並保存為TestBHO.cls;
2.3點擊菜單欄[工程]--[引用],選擇引用“VBShellLibrary”(VBSHELL.TLB)、“Mi-crosoftHTMLObjectLibrary”(MSHTML.TLB)、“MicrosoftInternetControls”(shdocvw.dll);
2.4在類模塊TestBHO.cls中添加核心介面代碼,實現與IE的介面;
2.5生成介面dll文件TestBHO.dll並複製到系統system32目錄下;
2.6運行"regsvr32TestBHO.dll"註冊TestBHO.dll文件,然後打開註冊表,通過查找TestBHO.dll,找到其CLSID,再從註冊表中找到介面,在其下新建項,項名為TestBHO.dll的CLSID;
2.7新打開一個IE瀏覽器,打開幾個網頁,再查看C:\bho.txt文件,是不是已經記錄了你瀏覽的網頁地址,效果如何?
至此,這個BHO介面已經完成,每次新打開一個IE窗口,都會載入TestBHO.dll,每打開一個網頁,都會將上網日期時間、網頁地址記錄到C:\bho.txt中,關閉IE窗口時,TestBHO.dll也會自動關閉,不再運行記錄網址。