【发布时间】:2019-08-28 11:58:29
【问题描述】:
我对 Wix 工具完全陌生,所以我不知道如何更改它。我使用 Visual Studio 2017 扩展中的 Wix 工具集从我的 C# 项目中构建一个 .msi 文件。生成了 msi 文件,但问题是我可以更改文件的属性(例如标题、评论、作者等)。制造商属性也不会出现在细节上。我查看了 documentation 并尝试在 Package 元素上添加 'ReadOnly' 属性,但它什么也没做。
如何禁用对 msi 文件属性的编辑?
Product.wxs(产品元素):
<Product Id="*" Name="Program Name" Language="1033" Version="!(bind.FileVersion.ProgramDLL)" Manufacturer="Company Name" UpgradeCode="random GUID">
<Package InstallerVersion="200" Description="$(var.ProductName) Setup" Comments="$(var.ProductName) is a product of Company Name" Manufacturer="Company Name" Compressed="yes" InstallScope="perMachine" />
<MediaTemplate EmbedCab="yes"/>
<UIRef Id="WixUI_Minimal"/>
<WixVariable Id="WixUILicenseRtf" Value="Programname.License.rtf" />
<WixVariable Id="WixUIBannerBmp" Value="Banner.bmp" />
<WixVariable Id="WixUIDialogBmp" Value="Welcome.bmp" />
<Icon Id="icon.ico" SourceFile="icon.ico"/>
<Property Id="ARPPRODUCTICON" Value="icon.ico" />
<MajorUpgrade AllowSameVersionUpgrades='yes' Schedule="afterInstallInitialize" DowngradeErrorMessage="A later version of $(var.ProductName) is already installed. Setup will now exit." />
<Property Id='INSTALLFOLDER'>
<RegistrySearch Id='R_InstallDir' Root='HKLM' Key='SOFTWARE\Program\ProgramName' Name='InstallDir' Type='raw' />
</Property>
<Condition Message="Install Folder of Program Name not found">INSTALLFOLDER</Condition>
<Feature Id="ProductFeature" Title="Program_Setup" Level="1">
<ComponentRef Id="Cmp" />
<ComponentRef Id="License" />
<ComponentRef Id="DokuXSD" />
</Feature>
</Product>
【问题讨论】:
-
你不能(除了某个位置的文件的文件权限)。但是,如果您对其签名并且用户了解它应该由 您 签名,那么他们可能在给出已编辑的 msi 时会注意到,因为它不会由您签名.
标签: visual-studio wix windows-installer