在wix中注册com dll
发布时间:2020-12-13 22:44:42 所属栏目:Windows 来源:网络整理
导读:如果不是自我注册.那么我们如何在使用WIX进行安装时执行COM dll注册? 根据tutorial,我使用了ComPlusApplication示例(非.net dll).但它不起作用.它没有注册. 我可以成功地从命令行使用regsvr32进行注册. 我读到没有为注册com dll创建自定义操作. 那么最好的
如果不是自我注册.那么我们如何在使用WIX进行安装时执行COM dll注册?
根据tutorial,我使用了ComPlusApplication示例(非.net dll).但它不起作用.它没有注册. 我可以成功地从命令行使用regsvr32进行注册. 那么最好的方法是什么?
我强烈建议使用Wix工具Heat.exe来获取注册com组件所需的所有数据,然后引用.wxs文件中的片段,如下所示:
<ComponentGroupRef Id="FooBar.dll" /> 或者将它包含在.wxs文件中,如下所示: <?include FooBar.dll.wxi?> 此方法使您可以完全控制Com组件的注册/取消注册期间发生的情况. 但是,您仍然可以在Wix项目中使用Regsvr32.但它依赖于COM组件中RegisterServer / UnregisterServer函数的正确实现 <CustomAction Id="RegisterFooBar" Directory="INSTALLDIR" ExeCommand='regsvr32.exe /s "[INSTALLDIR]FooBar.dll"'> </CustomAction> <CustomAction Id="UnregisterFooBar" Directory="INSTALLDIR" ExeCommand='regsvr32.exe /s /u "[INSTALLDIR]FooBar.dll"'> </CustomAction> 然后将您的操作添加到安装序列. <InstallExecuteSequence> <Custom Action="RegisterFooBar" After="InstallFinalize">NOT Installed</Custom> <Custom Action="UnregisterFooBar" After="InstallFinalize">REMOVE="ALL"</Custom> </InstallExecuteSequence> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-phone-8 – 为什么要警告Newtonsoft.Json.JsonConv
- windows – 测试用户帐户和密码的工具(测试登录)
- windows – 生产代码中的工作流程
- winapi – 具有自定义对话框的IProgressDialog或有关如何执
- windows-phone-8 – 如何更改起始页?
- Qt for Windows:Qt 5.11.0 MinGW 静态编译版本(包含OpenS
- win10系统更新后跳板机无法使用
- windows-server-2008-r2 – 使用PowerShell将一个网站从一个
- 在Windows上使用OpenGL扩展
- 批量更改Microsoft DNS和IIS服务器设置