将 WiX 工具集 -> Torch.exe 与 Azure DevOps 管道一起使用不起作用
Using WiX Toolset -> Torch.exe with Azure DevOps Pipeline does not work
我正在使用 Azure DevOps Services 管道创建设置。此管道创建 MSI 和 wixpdb。然后我在命令行脚本中调用 torch.exe 以从两个不同的 wixpdb 创建补丁。这在本地工作没有问题,但是当我在 Azure DevOps 服务管道的命令行脚本中调用 torch.exe 时,我收到以下错误:
torch.exe : error TRCH0001 : A part of the path "C:\temp\Agent\s\test\udmonxof\udmonxof.cab" could not be found.
我该怎么做才能完成这项工作?
默认情况下,项目应该生成三个文件,.msi
、.cab
和.wixpdb
文件。
对于azure devops pipeline,需要这三个文件都存在,才能成功创建patch。但在您的情况下,我们的系统无法在那里找到 .cab
文件。
因此,首先,请确保 .cab
文件在创建 MSI 和 wixpdg 文件时也已成功生成。
假设您的 WXS
文件中有一个媒体参数,请确保 EmbedCab
值为 no.
样本:
<Media Id="1"
Cabinet="media1.cab"
EmbedCab="no"
DiskPrompt="Disk 1"
VolumeLabel="Disk1" />
<Media Id="2"
Cabinet="media2.cab"
EmbedCab="no"
DiskPrompt="Disk 2"
VolumeLabel="Disk2" />
我已经解决了如下问题:
这对我有帮助:https://github.com/wixtoolset/issues/issues/5778
我已在命令行脚本中将以下条目添加到注册表中:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AppContext]
"Switch.System.DisableTempFileCollectionDirectoryFeature"="true"
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\AppContext]
"Switch.System.DisableTempFileCollectionDirectoryFeature"="true"
之后我调用了 torch.exe 并且没有再发生错误。
我正在使用 Azure DevOps Services 管道创建设置。此管道创建 MSI 和 wixpdb。然后我在命令行脚本中调用 torch.exe 以从两个不同的 wixpdb 创建补丁。这在本地工作没有问题,但是当我在 Azure DevOps 服务管道的命令行脚本中调用 torch.exe 时,我收到以下错误:
torch.exe : error TRCH0001 : A part of the path "C:\temp\Agent\s\test\udmonxof\udmonxof.cab" could not be found.
我该怎么做才能完成这项工作?
默认情况下,项目应该生成三个文件,.msi
、.cab
和.wixpdb
文件。
对于azure devops pipeline,需要这三个文件都存在,才能成功创建patch。但在您的情况下,我们的系统无法在那里找到 .cab
文件。
因此,首先,请确保 .cab
文件在创建 MSI 和 wixpdg 文件时也已成功生成。
假设您的 WXS
文件中有一个媒体参数,请确保 EmbedCab
值为 no.
样本:
<Media Id="1"
Cabinet="media1.cab"
EmbedCab="no"
DiskPrompt="Disk 1"
VolumeLabel="Disk1" />
<Media Id="2"
Cabinet="media2.cab"
EmbedCab="no"
DiskPrompt="Disk 2"
VolumeLabel="Disk2" />
我已经解决了如下问题:
这对我有帮助:https://github.com/wixtoolset/issues/issues/5778
我已在命令行脚本中将以下条目添加到注册表中:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AppContext] "Switch.System.DisableTempFileCollectionDirectoryFeature"="true"
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\AppContext] "Switch.System.DisableTempFileCollectionDirectoryFeature"="true"
之后我调用了 torch.exe 并且没有再发生错误。