2013-03-11 107 views
1

我有我的contextmenu外壳扩展DLL。我已经使用Heat.exe为我的dll创建组件,并且在安装时它工作得很好。 但我无法使用wix安装程序注册我的dll。 我已经尝试过各种选择,没有任何工作。无法注册DLL使用WIX安装程序

如果我尝试使用regasm.exe/codebase Myfile.dll进行手动注册,它可以工作。

回答

1

Regasm/regfile(因此heat或InstallShield)具有不写出用户注册数据的已知行为。在这种情况下,您需要在虚拟机上安装软件,并使用工具在运行regasm之前和之后捕获注册表。然后执行差异报告以查看更改内容。把它写入你的WXS。

最后重置虚拟机并运行新安装并验证它是否正常工作。

+0

在威克斯文件中的所有注册表要素匹配,但是当我采取了快照,它是在HKLM \ SOFTWARE \ Classes中添加\ Wow6432Node \ CLSID \设为myVal而不是HKLM \ SOFTWARE \ Classes下\ CLSID \设为myVal – 2013-03-11 19:03:31

+0

考虑到Wow6432Node只是在64位机器上的32位注册表视图,功能上可能相同。 – 2013-03-11 20:12:00

相关问题