WIX:将文件复制到另一个分区中的自定义目录

ale*_*x.b 5 windows-installer wix

我需要将应用程序的文件安装到通常的位置,例如C:\Program Files\MyApp
,还需要将其中几个文件复制到另一个分区的自定义文件夹中
(比方说D:\CustomFolder,允许对其进行硬编码)。

安装应该是静默的 - 没有 GUI 或向导。而且所有内容都应该位于一个 *.msi 文件中。

我可以通过 做到这一点CustomActions,但优雅的声明方式更好。

以前有人尝试过这个吗?
谢谢。

更新:忘记提及,允许应该位于单独分区上的文件位于C:\Program Files\MyApp

ale*_*x.b 6

解决了。方法是:

  1. 指定应放置文件的自定义文件夹:

    <Property Id="MY_CUSTOM_DESTINATION" Value="D:\MyCustomFolder" />

  2. <Copy ..>指令放入<File ...>应复制的位置

<DirectoryRef Id="MyAppFolderThatIsInProgramFiles">
     <Component Id="MyComponent" Guid="some_guid">
      <File Id="MyFileXml" Source="MyFile.xml" KeyPath="yes" >
          <CopyFile Id="Copy_MyFileXml" DestinationProperty="MY_CUSTOM_DESTINATION"/>
      </File>
     </Component>
</DirectoryRef>
Run Code Online (Sandbox Code Playgroud)

ps 作为副作用,指定的文件<File Id="MyFileXml" ... /> 将被放入位置:C:\Program Files\MyAppD:\MyCustomFolder,但这对于我的任务来说是正确的。