问题标签 [heat]
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.
xslt - 使用 heat.exe,启用 gac 仅从 .txt 文件动态读取的特定二进制文件列表
我正在使用 heat.exe(harvest 目录类型)来自动生成 wix 创作。大约有 40 个 dll,我只想 GAC 列出 10 个 dll 的列表,列表在 .txt 文件中可用。是的,我使用了 XSLT(我对它很陌生),我可以使用硬编码的值来做到这一点,但不能从 .txt 中动态读取它。我试过搜索,找不到好的样本。
请建议我如何从 .txt 动态读取 dll 列表并与 Source/FileId 匹配。
wix - 在wix中使用Heat时如何避免不必要的标签
我正在使用 HEAT 为文件目录自动生成 WiX 片段。在创建 --.wxs 文件时,为什么在组件中包含一些不必要的标签?如下
情景 1
......很多类文件
..........很多注册表项
wix - Wix\heat.exe 奇怪的输出
我有一个目录,里面有一个文件:Iesi.Collections.dll。
当我运行以下命令时:
我得到了非常奇怪的输出。可能只对我来说很奇怪,所以请向我解释一下。为什么我得到这些注册表值?对于任何第三方 dll,例如 MassTransit 或 RabbitMQ,我都会得到相同的结果。
预期输出:
电流输出:
编辑:可能重复:在 wix 中使用 Heat 时如何避免不必要的标签
wix - 使用 x64 dll 获取错误 HEAT5150
当我尝试获取的文件夹中有 x64 dll 时出现此错误
heat.exe:错误 HEAT5150:无法从预期为 SelfReg DLL 的文件中收集数据:C:\Users\ama\Documents\Projekt\FreePIE\Output\sixense_fak e_x64.dll。如果此文件不支持 SelfReg,您可以忽略此警告。否则,此错误详细信息可能有助于诊断故障:无法加载文件:C:\Users\ama\Documents\Projekt\FreePIE\Output\sixense_fake_x64.dll,错误:193 [C:\Users\ama \Documents\Projekt\FreePIE\BuildTools\build_installer.xml]
如何配置 heat 以支持 x64 dll 或只添加它们而不进行任何检查?它只是一个静态 c 库,我的程序甚至没有使用它,如果用户想伪造这个 SDK,他会处理从安装文件夹到依赖它的第三方程序的 Sixense_fake_x64.dll。
如果有任何帮助,请编辑源代码
xslt - Wix Heat - Replace an autogenerated GUID with known string using XSLT
I'm working on migrating a Windows Service VDPROJ to WiX.
I was able to use HEAT to harvest output from my Windows Service project into a fragment. Currently, in order for my custom actions to work properly, I manually change some of the generated GUIDs from the Heat-generated file into known strings that are referenced in the main Product.wxs.
I need to do this programmatically on every build instead of relying on manual intervention since I need to integrate the WiX project into our continuous build server.
From what I could research, I can use an XSLT transform on the output of HEAT to achieve what I need, but I'm having a hard time making my XSLT transform work.
Here is a section of the generated fragment without using the XSLT transform
Fragments\Windows.Service.Content.wxs
I modified the HEAT prebuild command to:
and wrote the following XSLT to achieve two things:
- Replace all occurrences of "ComponentIdINeedToReplace" to a known string (there's two)
- Replace single ocurrence of "FileIdINeedToReplace" to a known string
Resources\XsltTransform.xslt
How can I modify my XSLT to achieve what I need?
xml - 使用 XSLT 转换 Heat 生成的 .wxs(添加 RegistryValue 并编辑一些值)
这是我想要的输出:
这是我的 XSLT 文件:
这是我使用该 XSL 的输出:
我一激活
XSL 中的文件更改不会像添加前缀那样应用,将 keypath 更改为 no,如果我删除添加注册表的文件更改就像一个魅力!
我做错了什么?
感谢任何帮助,谢谢。
更新:这是未经转换的 XML 原始示例:
xml - Wix Heat 包含来自另一个 xml 或 txt 中列出的文件夹中的文件,并排除其余文件
我想使用 Heat 收集一个包含大量文件的目录,但并非所有文件都应该进入安装。但是,我有一个文件列表,应该以这种格式包含在另一个 XML 中:
它也可以是一个简单的文本文件,每行一个文件。
我已经有一个 XSL 转换,我可以指定一个要排除的文件,但如果你有数百个文件,它就不太合适了。我对 XSL 几乎一无所知(一直在使用我能找到的示例),所以我希望能以某种方式将此 xml/txt 文件包含到 XSL 中,热量将使用它并排除列表中的文件。
xslt - MultiInstance="yes" xsl 热转换
我的问题是 heat.exe 没有命令行开关来将“MultiInstance”属性设置为“yes”(甚至用于设置任意属性)。看来我唯一的办法就是为-t
开关提供一个转换 xslt。是否有人已经拥有一个 xslt,它将MultiInstance="yes"
在所有收获的输出组件元素上包含一个属性?
如果我没有得到任何答案,我将自己创作一个,并将其作为对这个问题的答案发布。
powershell - 对文件使用热量而不生成新的组件 guid
我们需要自动填充组件中的文件部分。所以我们想使用一个工具来生成这样的文件部分(这里是一个包含文件)
在 wxs 中,我们希望有类似的东西
在这种情况下,我们将始终拥有具有相同 guid 的相同组件,但只有一些附加文件有效,这些文件遵循 Windows 安装程序定义的规则。
在我的测试中,heat 总是生成一个带有新 guid 的新组件,并且永久标志总是丢失,所以我创建了一个 powershell 脚本来生成文件片段。但这对我来说看起来很丑陋。
热量是否提供了实现我的目标的可能性,或者如何仅更新现有组件中的文件?
wix - wix HeatDirectory 服务安装
我正在使用 HeatDirectory 创建源 .wxs 文件。在pickup目录中有一个exe应该作为服务安装。实际上,如果我自己创建组件,我知道如何安装服务,但我不知道如何将 ServiceInstall 包含在自动生成的组件中。有什么建议吗?
最好能自动生成如下代码: