我正在使用 Wix 编译安装程序,并尝试使其安装计划任务。我创建了一个包含计划任务详细信息的 XML 文件(称为 BackupComplete.xml - 使用计划任务中的导出功能)。现在我想在 CustomAction 中引用它,以便在安装结束时添加计划任务。
现在我有这个:
<CustomAction Id="CreateScheduledTask" Return="check" Directory="Scripts" ExeCommand="[SystemFolder]schtasks.exe /Create /XML BackupComplete.xml" />
但是如何引用我的 BackupComplete.xml 文件?我不希望将 BackupComplete.xml 安装到目标计算机,它应该只包含在源 .cab 文件中,以便我的 CustomAction 可以读取它。
我可以像这样添加我的计划任务 XML 文件:
<File Id="taskxml" Source="src\BackupComplete.xml" />
在组件内部,但这会在目标计算机上安装 BackupComplete.xml,这是我想避免的......
这是我的整个 WIX XML:http://pastebin.com/wFWd1zVc
谢谢
最佳答案
在类似的情况下经常使用以下方法:
- 将临时文件添加到
Binary
table 。使用<Binary>
此元素 - 在延迟自定义操作中:
- 解压文件
- 执行必要的操作
- 删除文件
关于windows - WIX:引用源文件但不将其安装到目标计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14749850/