问题标签 [wix3.7]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-2.7 - 如何在每次创建 msi 期间动态更改 wix 中的产品版本
我有一个脚本,我在其中将产品的版本号设置为变量“PRODUCTVERSION”,即
我想将此变量“PRODUCTVERSION”作为 msbuild 属性传递给 wix。下面是我尝试过的代码,但最终出现错误消息,
这是我的脚本,
我的 wix 项目中的属性在哪里,
我想将我的输出名称显示为 'myapp-2.0.PRODUCTVERSION' ,其中 PRODUCTVERSION 是我从 python 脚本中获得的版本号。请帮我找到解决方案。
wix - WiX 3.7 使用 Microsoft 引导程序
我是 WiX 的新手。我在 wix 设置项目中找到了直接包含 Microsoft Bootsrappers 的教程。不幸的是,wix3.7 无法做到这一点,因为它希望使用 WiX 引导程序项目来检查先决条件。
如何在我的 WiX 3.7 引导程序项目中使用 Microsoft 提供的引导程序?
wix - MsiPackage - 属性“缓存”的含义
我正在搜索描述,即 MsiPackage 中的属性“缓存”代表什么。当我查看http://wix.sourceforge.net/manual-wix3/wix_xsd_msipackage.htm时,我无法获得一些额外的信息。是否有另一个链接描述了这个属性,或者有人可以解释一下这个属性吗?
msbuild - 打包时 TransformXml 任务失败
嗨,当我尝试在 MSBuild 中打包东西并构建解决方案时。
收到“TransformXml”任务失败错误。不确定如何修复它。
wix - 如何组合 Wix 变量
例如,我可以"!(bind.property.ProductVersion)"
用来设置 UpgradeVersion\@Minimum 属性。工作正常。但现在我想将该属性设置为:
但这不起作用。我收到此错误:UpgradeVersion/@Maximum 属性的值 '!(bind.property.ProductVersion.Major).!(bind.property.ProductVersion.Minor).0.0' 不是有效版本。合法版本值应类似于“xxxx”,其中 x 是 0 到 65534 之间的整数。
有什么想法可以让它发挥作用吗?
问候,雅普
wix - WiX:如何打包 exe 或 dll 以仅在安装期间使用
我需要在生成的 MSI 中包含一个 dll/exe(通过 WiX 项目创建),但我不想在安装过程中部署它们:我只想在一些 CustomAction 中使用它们我的目的是包含一个现有的 exe/dll并在安装期间从 wxs 代码(而不是从 CustomAction dll)调用它。
是否可以包含安装期间未部署的文件?我的意思是,只将它们打包在生成的 MSI 中,并在它们被解压到 %temp% 文件夹中时调用它们执行某些任务?
此外,如果有人可以通过 Product.wxs XML 代码单元展示一些如何包含 dll/exe 的示例代码,那就太好了。
谢谢。
visual-studio - 在 MSBuild 中获取本机 exe 的文件版本
我在 Visual Studio 2010 解决方案中有许多 Visual C++ 项目。此解决方案中还有一个 WiX 项目,它为作为 C++ 项目之一的产品的可执行文件构建安装程序。
可执行文件在其项目中有一个资源文件,该文件将程序的版本写入可执行文件。
现在,我想使用与资源文件写入可执行文件的版本相同的编号对 WiX 构建的安装程序进行版本控制。我在 StackOverflow 上搜索了与 WiX 相关的帖子,发现了这个帖子:
从 WiX 设置项目引用在 WiX 库项目中定义的 WixVariable
接受的答案似乎表明一个可能的解决方案是在 BeforeBuild 目标中使用 MSBuild 和 GetAssemblyIdentity 任务从另一个文件获取版本号(在 SO 问题的情况下是 DLL,在我的情况下是可执行文件)并在 WiX 构建安装程序之前将其公开给 WiX。
我尝试将其添加到我的 .wixproj 文件的 MSBuild 部分,但是当我尝试构建安装程序时,我收到一条错误消息:
我似乎在 MSDN 上找不到有关此错误的任何信息,因为它与 MSBuild 相关。我检查了构建的可执行文件,它上面肯定有一个版本号(以及 .rc 文件中的其余信息),WiX 项目取决于输出可执行文件的项目;所以我假设它的 BeforeBuild 任务是在它所依赖的项目完全构建之后运行的。
我是否应该使用不同的任务而不是 GetAssemblyIdentity 从 MSBuild 中的 .exe 检索版本号,在 GetAssemblyIdentity 工作之前是否需要满足其他要求,或者只是无法获取有关 .exe 文件的此类信息微软构建?
编辑 :
我接受了 Rob 的回答,因为我误解了 ProductVersion 和 FileVersion 之间的区别,他建议的 WiX 技术正在按预期工作,并且是朝着我需要的解决方案迈出的一步。
FileVersion 只是可执行文件的属性。Msi 文件本质上是数据库,而 ProductVersion 是该数据库中的一个条目;他们没有要设置的 FileVersion 属性。他建议的方法在 .msi 数据库中正确设置 ProductVersion。
这个问题的标题现在与我实际遇到的问题并没有真正的关系,因为我正在寻求一个我认为我当时需要的解决方案。我现在已经解决了根本问题,它只是访问安装程序的 ProductVersion。我在这里找到了一个在线发布的 cscript 脚本:http: //kentie.net/article/wixnameversion/index.htm,它显示了如何访问 .msi 的 ProductVersion。使用它使我能够提取 ProductVersion 并在其他工具中使用它。
wix - WiX 3.7 UI 未正确链接
WiX 新手在这里...我已经创建了我的 WiX 安装程序包,它可以正确安装所有功能。然后我尝试使用以下内容向其添加 UI:
我链接到“light -ext WixUIExtension -cultures:en-us”。它找到了这个扩展,因为如果我用一个不存在的名称尝试它会出错,但生成的 msi 包只有 30kb。如果 UI 扩展正确链接,我认为这应该稍大一些?
当我运行 msi 时,它只提供正常的进度条,没有我期望 WixUI_Minimal 提供的其他 UI。
所有参考资料似乎都声称,当包正确链接时,您只需要一个简单的 UIRef 即可获得 UI……是否有一种已知的方法可以使链接无法正确发生而不会引发错误(即使我与-迂腐)?
wix - WiX-Bootstrapper - 为 UAC 对话框设置产品名称和公司名称
我用 WiX 3.7 创建了一个引导程序。现在,当我在 Windows7 机器上启动它时,将在安装 .NET 4.0 作为先决条件之前显示 UAC-Dialog。没关系。我现在正在寻找一种“签署”安装程序/引导程序的方法,我可以为 UAC-Dialog 设置产品名称和公司名称。我怎样才能做到这一点?