【问题标题】:Wix resource harvesting tool "Heat". How to harvest files with dynamic name like Microsoft run time files generated on buildWix 资源收集工具“Heat”。如何获取具有动态名称的文件,例如构建时生成的 Microsoft 运行时文件
【发布时间】:2020-01-20 16:29:31
【问题描述】:

我有一个非常简单的问题,但由于 Wix 的限制,我似乎无法轻易找到答案,而且我对 Wix 还是很陌生。

问题是,如标题中所述,我无法制作在构建时生成的几个文件,并且这些文件的名称会根据操作系统运行时间(准确地说是 .Net Core)进行更改,然后手动进入产品.wix 文件和更改几个资源的名称。

文件示例

\obj\Release\netcoreapp2.2\win-x64\PubTmp\Out\mscordaccore_amd64_amd64_4.6.28207.03.dll".

版本 4.6.28207.03.dll 是动态生成的。

【问题讨论】:

    标签: c# azure-devops wix heat harvest


    【解决方案1】:

    您可以尝试获取outputs of your vs project,因为 dll 文件是您项目的输出。

    heat project "MyProject.csproj" -pog:Binaries -ag -template:fragment -out project.wxs

    您还可以尝试在您的主应用程序项目中添加构建后事件,以将这些文件复制到一个特殊位置并让 Heat.exe 从那里读取它们。你可以参考这个博客here

    在 azure devops 管道中,您可以尝试添加 copy file task 以将这些文件复制到 Heat 可以读取的特定位置。

    【讨论】:

    • 我想到了编写预构建步骤并运行脚本来收集文件。但在那种情况下,我在更新我的 Product.wxs 和 ProductFolderStructure.wxs 时仍然遇到问题。这也将是一些脚本,这不是一个简单的解决方案,因为我需要插入和更改诸如 Source、ID 等组件参数......但我从所有研究中看到没有更简单的方法
    猜你喜欢
    • 2011-09-11
    • 1970-01-01
    • 2013-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多