【发布时间】:2010-10-25 20:19:39
【问题描述】:
我编写了两个对象,一个桌面工具栏和一个用于 IE 的 bho。目标是 bho 在安装后显示工具栏。微软的做法是使用pBrowser->ShowBrowserBar(&vtBandGUID, &vtShow, 0);
此方法可以很好地显示和隐藏已通过插件管理器激活但不适用于已停用插件的工具栏。有没有办法以编程方式做与插件管理器完全相同的事情(启用/禁用特定插件)?
【问题讨论】:
我编写了两个对象,一个桌面工具栏和一个用于 IE 的 bho。目标是 bho 在安装后显示工具栏。微软的做法是使用pBrowser->ShowBrowserBar(&vtBandGUID, &vtShow, 0);
此方法可以很好地显示和隐藏已通过插件管理器激活但不适用于已停用插件的工具栏。有没有办法以编程方式做与插件管理器完全相同的事情(启用/禁用特定插件)?
【问题讨论】:
你应该澄清你的问题。
编写代码来激活用户特别禁用的插件可能被视为恶意行为,并可能导致相关应用程序被标记为恶意软件。
【讨论】:
您可以通过向此键添加/删除名为“Flags”的 DWORD 注册表值(值为 1)来启用/禁用 BHO:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\Settings\<BHO CLSID>
【讨论】:
另外,Flags 的 0 值表示启用。 1 表示禁用。
有时会输入 1 以外的其他值(例如 256)。
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\Settings\<BHO CLSID>
【讨论】: