gpt4 book ai didi

installation - 将外部文件复制到安装目录 WiX

转载 作者:行者123 更新时间:2023-12-04 03:36:15 25 4
gpt4 key购买 nike

我有同样的问题 here .我有一个 .config 文件,我想从源目录(我的 .msi 文件所在的位置)复制到我的安装目录。

我尝试了几种方法:

我尝试的第一件事:

<DirectoryRef Id="ProgramFilesFolder">
<Component Id="$(var.productFamily)$(var.productSummary).config" Guid="$(var.GUID_CMP_DemoConfig)" KeyPath="yes">
<CopyFile Id="$(var.productFamily)$(var.productSummary).config"
SourceName="$(var.productFamily)$(var.productSummary).exe.config"
SourceProperty="SOURCEDIR"
DestinationDirectory="$(var.productFamily)$(var.productType)"
DestinationName="$(var.productFamily)$(var.productSummary).exe.config"
>
</CopyFile>
</Component>
</DirectoryRef>

但是这个方法失败了,因为它试图在安装应用程序之前复制文件,所以我的目录仍然不存在。

我尝试的第二件事:

将其添加为安装程序的另一个组件。

      <Component Id="$(var.productFamily)$(var.productSummary).config" Guid="$(var.GUID_CMP_DemoConfig)">
<File Id="$(var.productFamily)$(var.productSummary).config"
Name="$(var.productFamily)$(var.productSummary).exe.config"
DiskId="1" KeyPath="yes"
Source="$(var.productFamily)$(var.productSummary).exe.config" >
</File>
</Component>

有了这个,我应该能够从安装程序的 Release 文件夹复制到我的 INSTALLDIR,但是当我在 VS 2010< 上构建项目时,它没有找到文件...

我尝试的第三件事:

我试图将 SOURCEDIR var 更改为我自己的变量,这样我就可以将它用作常规组件,执行 this .但它不允许我更改变量名。它在尝试更改时说:

heat.exe:错误 HEAT0319:“-out”或“-o”参数必须指定文件路径。

所以我只想从我的.msi所在的位置复制一个文件,但我还是做不到......

有什么想法吗?

最佳答案

您可以使用 File 元素的 Compressed 属性来排除文件在构建时被压缩到 MSI 中。然后您可以根据具体情况替换此文件的内容。像平常一样创作,像平常一样安装,一切都会很好,无需做任何花哨的事情。

例如,以下添加 Compressed 属性以覆盖 Package 元素设置的默认压缩:

<Component>
<File Source="$(var.productFamily)$(var.productSummary).exe.config"
Compressed='no' />
</File>
</Component>

关于installation - 将外部文件复制到安装目录 WiX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15808355/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com