无法使用 WIX 安装程序注册 dll
Posted
技术标签:
【中文标题】无法使用 WIX 安装程序注册 dll【英文标题】:Not able to register dll using WIX installer 【发布时间】:2013-03-11 16:57:41 【问题描述】:我有我的上下文菜单外壳扩展 dll。我使用 Heat.exe 为我的 dll 创建组件,并在安装时完全正常。 但我无法使用 wix 安装程序注册我的 dll。 我尝试了各种选择,但没有任何效果。
如果我尝试使用 regasm.exe /codebase Myfile.dll 进行手动注册,它会起作用。
【问题讨论】:
【参考方案1】:Regasm /regfile(因此 heat 或 InstallShield )具有不写出用户注册数据的已知行为。在这种情况下,您需要在 VM 上安装软件并使用工具在运行 regasm 之前和之后捕获注册表。然后执行差异报告以查看更改的内容。将其写入您的 WXS。
最后重置虚拟机并运行新安装并验证它是否正常工作。
【讨论】:
在 wix 文件中,所有注册表元素都匹配,但是当我拍摄快照时,它添加到 HKLM\SOFTWARE\Classes\Wow6432Node\CLSID\myval 而不是 HKLM\SOFTWARE\Classes\CLSID\myval跨度> 考虑到 Wow6432Node 只是 64 位机器上的 32 位注册表视图,在功能上可能是相同的。以上是关于无法使用 WIX 安装程序注册 dll的主要内容,如果未能解决你的问题,请参考以下文章
WiX 安装 SQLServerSpatial.dll 和 SQL Server 2008 R2?