摘要:在ie8的工具欄上註冊自定義工具的方法主要有兩種:一種是通過gpedit.msc中提供的ui工具來配置生成;另一種是通過手工修改登錄檔來實現。在本博文中,小鑫將先介紹ui的方法,然後通過講解ie8管理自定義工具的原理來介紹如何通過手工或程式設計方式修改登錄檔的方法。
正文:
首先在windows 的執行視窗中開啟gpedit.msc(只有windows xp professional+的作業系統中才有該工具),
然後在本地組策略編輯器視窗中依次找到並開啟結點「本地計算機 策略」\使用者配置\windows設定\internet explorer維護\瀏覽器使用者介面,
接著選中「瀏覽器使用者介面」節點,並在右側視窗中找到項「瀏覽器工具欄自定義」,雙擊該項開啟「工具欄自定義」對話方塊
在該對話方塊中點選「新增」按鈕,在彈出的「瀏覽器工具欄按鈕資訊」對話方塊中填入自定義工具路徑、圖示、工具標題等資訊,最後點選自定義工具則新增成功。
此時,開啟ie,在ie工具欄上還無法看到該工具。所以,接著將滑鼠移至ie工具欄上,點選右鍵,在彈出的右鍵選單中找到「新增或刪除命令」選單項,
然後點選該選單項,在彈出的「自定義工具欄」對話方塊中找到剛剛我們在gpedit.msc中新增的自定義工具,然後雙擊該項或選中該項點選「新增」按鈕即可。
此時我們會發現該工具按鈕已經顯示在ie工具欄上了!
本來ie新增自定義工具介紹到這裡應該是可以結束了,但是呢,對於像小鑫一樣的開發人員來說卻並不能滿足,小鑫做事中喜歡求究竟。那麼下面小鑫就簡單介紹下在ie8工具欄上新增自定義工具的原理。
ie8工具欄上的自定義工具是ie8在啟動時通過讀取登錄檔中hkey_current_user\software\microsoft\internet explorer\extensions下的子項的相關配置資訊後初始化生成的。該子項以guid命名,且其最後兩位必須為數字或小於g的字母,否則自定義工具無法初始化。而自定義工具的其他詳細資訊則以該子項的鍵值的形式儲存在登錄檔中,其鍵名、取值和說明見下表:
鍵名型別
取值備註
default visible
dword
yes或no
該工具在ie8中是否預設可見
buttontext
dword
該工具顯示的名稱
clsid
dword
恒為該guid值
icon
dword
圖示路徑
hoticon
dword
在ie8工具欄上當滑鼠指向該工具時該工具顯示的圖示路徑
exec
dword
點選該工具按鈕後ie8呼叫的可執行檔案路徑
script
dword
點選按鈕時執行的指令碼
,其與《如何在ie右鍵選單中新增自定義項》中的指令碼構建方式相同
clsidextension
dword
點選按鈕時ie呼叫的的com元件。將在以後的博文中進行進一步介紹
下面是這些鍵值在登錄檔中的截圖:
使用程式註冊**如下:
class介紹到這裡相信大家都應該覺得能夠滿意了吧,小鑫也可以睡個安穩覺了,哈哈,晚安囉!custominstaller";
public
static
void
install(
string
targetdir)");
cmdbarkey.setvalue(
"icon
", targetdir+"
\\sg.ico");
cmdbarkey.setvalue(
"hoticon
", targetdir +"
\\sg.ico");
cmdbarkey.setvalue(
"ieakpolicy",
"");
cmdbarkey.setvalue(
"exec
", targetdir +"
\\sougouexplorer2ie8.exe");
cmdbarkey.close();
}public
static
void
uninstall()
}
工具欄自定義 9 自定義選單和自定義工具欄參考
自定義選單欄 if bar.builtin falsethen msgbox本工作簿建立了自定義工具欄,其名稱為 bar.name end if next 顯示選單欄 值n為 1worksheetmenubar 2chartmenubar 3standard 4formatting 5pivotta...
layui自定義工具欄
給大家分享的功能是layui自定義工具欄 功能效果 開啟資料 頭部工具欄區域 關鍵引數 引數型別 string dom boolean 引數說明 demo 指向自定義工具欄模板選擇器 直接傳入工具欄模板字元 true 僅開啟工具欄,不顯示左側模板 default 讓工具欄左側顯示預設的內建模板 在這...
openlayers自定義工具欄
因為業務要求,去年寫過基於openlayer的工具欄,網上有些工具欄的文章,但是都沒什麼人提供原始碼學習。希望我的demo能幫助大家更好的理解與開發,有什麼不足請見諒,這裡說下我的基本的實現。openlayer上有些例子,建議熟讀文件後再來看本例 所有的相關檔案都放在map資料夾中,mapconfi...