我知道我可以简单地写入 CommandBandLayout regkey,但由于我不知道它是什么格式,我怀疑这是否安全。
此外,这个答案表明这是错误的解决方案:How to modify CommandBandLayout reg key value
但是我怎么能稍微改变一下顺序呢?我已经编写了一个 Internet Explorer 插件,并通过将它放在 HKCU 中进行了注册,但默认情况下它会从屏幕上消失,因此用户很难找到它。我想让栏变宽或将按钮移回屏幕。
我知道我可以简单地写入 CommandBandLayout regkey,但由于我不知道它是什么格式,我怀疑这是否安全。
此外,这个答案表明这是错误的解决方案:How to modify CommandBandLayout reg key value
但是我怎么能稍微改变一下顺序呢?我已经编写了一个 Internet Explorer 插件,并通过将它放在 HKCU 中进行了注册,但默认情况下它会从屏幕上消失,因此用户很难找到它。我想让栏变宽或将按钮移回屏幕。
您不能重新排列 IE 的工具栏布局。IE 管理它,用户可以使用内置的 UI 自定义它,但你不能。对不起。
实际上你可以,正如你所注意到的,布局在注册表中以二进制格式保存,但它涉及大量可能存储或不存储在注册表中的二进制数据的逆向工程,因为它是一个未记录的实现细节,IE 团队可以(实际上确实)改变它在每个新版本的 IE 中的工作方式。您必须编写三遍代码:一次用于 IE6,一次用于 IE7,一次用于 IE8。再次为 IE9 发布时,无论如何都不确定它是否会相同。每个都使用不同的格式,并且对于数据何时以及如何持久保存数据有不同的规则。忘记升级方案。
所以,告诉提出这个要求的人你做不到。
不,真的,推回去。我实际上一直在这个等式的两边。我在 IE 团队中,看到了扩展在尝试这样做时造成的灾难,我曾在有相同要求的公司工作,我已经完成了逆向工程并试图让它继续工作。相信我,你不想这样做。