ツールバーボタンを追加するIE9の拡張機能を作成しました。
登録は次のようになります。
RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(RegCmd, true);
if (registryKey == null)
registryKey = Registry.LocalMachine.CreateSubKey(RegCmd);
RegistryKey key = registryKey.OpenSubKey(guid);
if (key == null)
key = registryKey.CreateSubKey(guid);
key.SetValue("ButtonText", "My Button");
key.SetValue("CLSID", "{1FBA04EE-3024-11d2-8F1F-0000F87ABD16}");
key.SetValue("ClsidExtension", guid);
key.SetValue("Icon", "c:\myicon.ico");
key.SetValue("HotIcon", "c:\myicon.ico");
key.SetValue("Default Visible", "Yes");
key.SetValue("MenuText", "My Button");
key.SetValue("ToolTip", "My Button");
//key.SetValue("KeyPath", "no");
registryKey.Close();
key.Close();
問題は、アイコンがURLではなくファイルシステム上のファイルとして参照されていることです。IE Galleryは、プラグインを.msiではなく.dllとして配布するため、.icoをローカルファイルシステムに配置する機会がありません。
ボタンにアイコンを使用させるにはどうすればよいですか?