使用 WiX 注册 ActiveX exe 服务器 [英] Register ActiveX exe server using WiX

查看:28
本文介绍了使用 WiX 注册 ActiveX exe 服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有几个 VB6 ActiveX 服务器 exe 文件需要在安装时注册才能使用.

I have several VB6 ActiveX server exe files which need to be registered on install before they can be used.

我曾尝试使用 Heat 来提取信息,但它只生成一个文件元素.

I have tried using Heat to extract the information but it only generates a file element.

可以通过使用/regserver 开关调用它们来注册这些文件,并通过使用/unregserver 开关调用它们来取消注册.我知道这不是正确的方法.相反,我应该将注册表项和其他必需元素添加到我的 wix 源中.

These files can be registered by calling them with the /regserver switch and unregister by calling them with the /unregserver switch. I understand this is not the correct way to this. Instead I should add the registry keys and other required elements to my wix source.

我的问题是如何找出注册这些 ActiveX exe 文件所需的注册表项和其他元素.Seeing as Heat 似乎无法收集到这些信息.

My question is how do I find out what registry keys and other element I require to register these ActiveX exe files. Seeing as Heat seems unable to harvest this information.

推荐答案

我在 WiX 2.0 中遇到了同样的问题,我不得不为进程外服务器实现注册表收集.这是修补牛脂.将 ProcessWithInjectedDll 类合并到 Heat 并可能在某个时候收敛到主干线会很好.

I had the same problem with tallow from WiX 2.0 and had to implement registry harvesting for out-of-proc servers. Here is the patched tallow. Would be nice to merge the ProcessWithInjectedDll class to Heat and probably converge to the main trunk at some point.

请注意,生成的注册表项中包含大量来自 VB6 运行时的内容.如果不进行一些调整,生成的输出将无法使用.这时候 CleanupRegInclude.vbs 就可以派上用场了.

Beware that lots of cruft from VB6 runtime gets in the generated registry keys. The generated output is unusable without some tweaking. That's when CleanupRegInclude.vbs can be useful.

最后但同样重要的是,绝对文件名和路径是无用的.您必须改用 #YourComponent 和 $YourComponent(查看 MSI 文档).

Last but not least, absolute filenames and paths are useless. You have to use #YourComponent and $YourComponent instead (check the MSI documentation).

这篇关于使用 WiX 注册 ActiveX exe 服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆