使用WiX Toolset打包C#程序时,在安装目录预置文件夹和文件

做项目的时候遇到需要在安装目录预置文件夹的需要,由于微软的打包工具实在是不好用,所以改用WiX Toolset打包安装包

基础教程请参考Wix Toolset的官方文档(Documentation (wixtoolset.org))和【C#】WixToolset快速入门教程_catshitone的专栏-CSDN博客_wix教程,官方文档看几分钟点开一大堆页面,无法理解为什么要把文档弄成那样=。=,微软的文档也是那样,可能国外流行吧~

进入正题:

直接上wxs代码:

<Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
        <Directory Id="ProgramFilesFolder">
            <Directory Id="INSTALLFOLDER" Name="YourProgramName">
                <Directory Id="Folder1" Name="Folder1" />
                <Directory Id="Folder2" Name="Folder2" />
            </Directory>
    	</Directory>
    </Directory>
</Fragment>

如代码所示,直接在INSTALLFOLDER标签里添加文件夹标签,Id是唯一的Id,可以随便起,Name是文件夹的名称。

如果需要在预置的文件夹里添加文件:

<Fragment>
	<DirectoryRef Id="Folder1">
		<Component Id="file1" Guid="xxxxx-xxxxx-xxxxx">
			<File Id="file1.xxx" Source="$(var.YourProgramName.TargetDir)/Folder1/file1.xxx" />
		</Component>
	</DirectoryRef>
		
    <DirectoryRef Id="Folder2">
  		<Component Id="file2" Guid="xxxxx-xxxxx-xxxxx">
			<File Id="file2.xxx" Source="$(var.YourProgramName.TargetDir)/Folder2/file2.xxx" />
		</Component>
	</DirectoryRef>
</Fragment>

当然不要忘记在Product标签内的Featrue标签里加上预置文件夹里Component的Id,否则打包的时候不会自动添加预置文件夹:

<Feature Id="ProductFeature" Title="xxxxxx" Level="1">
	<ComponentGroupRef Id="ProductComponents" />
	<ComponentRef Id="file1"/>
	<ComponentRef Id="file2"/>
</Feature>

如果觉得看不懂,请先学习Wix Toolset的官方文档(Documentation (wixtoolset.org))和【C#】WixToolset快速入门教程_catshitone的专栏-CSDN博客_wix教程 ^-^

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值