我编写了一个 shell 扩展(资源管理器的文件上下文菜单中的项目),并使用 WiXheat从 DLL 创建一个 MSI。
问题:安装 MSI 不会显示上下文菜单项。
相反,运行Regasm.exe my.dll /codebase使项目出现。
heat将注册表项写入HKEY_CLASSES_ROOT\,同时
Regasm将注册表项写入HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.
我可以修改生成的heatWXS 以写入与 相同的注册表路径Regasm,但MSDN 建议 HKEY_CLASSES_ROOT并且显然有些用户无法写入 HKEY_LOCAL_MACHINE ...有更好的解决方案吗?