Wix 绑定子字符串或拆分
我正在尝试编写一个 Wix 安装程序来进行一些 TypeLib 注册。
我已经在其他地方使用注册文件中提取了 FileVersion
!(bind.FileVersion.#InteropDll)
,但我想对 TypeLib 做同样的事情,它只具有单独的 MajorVersion 和 MinorVersion 属性。理想情况下,我想做“
<TypeLib ...
MajorVersion="!(bind.FileVersion.InteropDll).Split('.')[0]"
MinorVersion="!(bind.FileVersion.InteropDll).Split('.')[1]">
我怎样才能完成这个(或类似的)?” ...或者我应该不理会这一切并在安装时调用 dll 文件上的 regasm 吗?
谢谢。
I'm trying to get a Wix installer written that does some TypeLib registration.
I'm already pulling the FileVersion off a registered file elsewhere using
!(bind.FileVersion.#InteropDll)
but I want to do the same thing for the TypeLib, which only has separate MajorVersion and MinorVersion attributes. Ideally, I'd like to do
<TypeLib ...
MajorVersion="!(bind.FileVersion.InteropDll).Split('.')[0]"
MinorVersion="!(bind.FileVersion.InteropDll).Split('.')[1]">
How can I accomplish this (or the like)? ...Or should I just not bother with all this and invoke regasm on the dll file at install time?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
目前 WiX 工具集不支持这样做。这是一个有趣的功能请求。我永远不会在安装过程中调用 regasm。通过外壳到外部可执行文件来实现回滚和修补以及所有这些都很难正常工作。
The WiX toolset doesn't support doing that today. It's an interesting feature request. I would never call regasm during an install. It's way to hard to get rollback and patching and all that working correctly by shelling out to an external executable.