我添加了一个项目引用到我的WiX项目,一切似乎都在工作,直到我检查已安装的文件。
他们不再有扩展名!因此无法使用为该扩展名注册的任何应用程序自动打开。
以下是相关代码:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLDIR" Name="My WiX Test">
<Component Id="ExeCom" Guid="PUT-GUID-HERE" Directory="INSTALLDIR">
<File Id="ExeFile" Name="ExeFile" Source="$(var.MyForm.TargetPath)" KeyPath="yes"/>
</Component>
<Component Id="TxtCom" Guid="PUT-GUID-HERE" Directory="INSTALLDIR">
<File Id="TxtFile" Name="TxtFile" Source="sometextfile.txt" KeyPath="yes"/>
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id="Complete" Title="Complete" Level="1">
<ComponentRef Id="ExeCom"/>
<ComponentRef Id="TxtCom"/>
</Feature>
安装完成后,我进入安装文件夹(Program Files \ My WiX Test)并期望点击exe文件启动应用程序。但是文件夹中的所有文件都没有扩展名。我必须手动重命名文件以添加.exe或.txt,或者通过对话框打开。
有没有办法强制WiX添加扩展名,或者我做错了什么?
答案 0 :(得分:2)
正如评论中已经说明的那样,最简单的(我们项目中很多.wxs文件用于查找我们使用自动检测的小区域)是指定name=
属性中的扩展名。
经过一番努力之后,我们转到了我们甚至将id命名为扩展名的方式,而不必查找ID属于什么名称以及构建中的文件。
示例:
<Component Id="ImplantCopyRight">
<File Id="Copyright.txt" Name="Copyright.txt"
Source="$(var.SourceRoot)/08-Impl/img/license/Implants/Copyright.txt" />