我为 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 将插件分发为 .dll 而不是 .msi,因此我没有机会将 .ico 放到本地文件系统上。
如何让按钮使用我的图标?