WiX安装程序未创建注册表项
问题的简短版本-什么可能阻止我的WiX内置安装程序创建注册表项(或包括创建注册表项的组件) 较长版本: 使用以下代码,我创建了一个WiX内置安装程序,该安装程序创建了一个注册表项:WiX安装程序未创建注册表项,wix,registry,Wix,Registry,问题的简短版本-什么可能阻止我的WiX内置安装程序创建注册表项(或包括创建注册表项的组件) 较长版本: 使用以下代码,我创建了一个WiX内置安装程序,该安装程序创建了一个注册表项: <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id="*" Name="RegistrySetup" Language="1033" Version="1.0.0.0" Manufacturer="MyComp
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*" Name="RegistrySetup" Language="1033" Version="1.0.0.0" Manufacturer="MyCompany" UpgradeCode="b56de3e6-b630-4763-886e-fe14f5d571ae">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />
<Feature Id="ProductFeature" Title="RegistrySetup" Level="1">
<ComponentGroupRef Id="ProductComponents" />
</Feature>
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="RegistrySetup" />
</Directory>
</Directory>
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="RegistryEntries" Guid="B0A06192-89B4-4D23-B983-EDB18BCEE2C9">
<RegistryKey Root="HKLM" Key="Software\MyCompany\MyProduct">
<RegistryValue Type="string" Name="Version" Value="[ProductVersion]" KeyPath="yes"/>
</RegistryKey>
</Component>
</ComponentGroup>
</Fragment>
</Wix>
而且效果很好。我有另一个更复杂的安装,我想在其中添加相同的注册表项,所以我想我唯一需要做的就是获取
部分,复制该部分,将其包含在
中,更改guid,并将组件Id添加到作为程序功能一部分安装的组件列表中,如下所示:
<Product>
...
<DirectoryRef Id="INSTALLDIR">
<Component Id="RegistryEntries" Guid="A0A06192-89B4-4D23-B983-EDB18BCEE2C9">
<RegistryKey Root="HKLM" Key="Software\MyCompany\MyProduct">
<RegistryValue Type="string" Name="Version" Value="[ProductVersion]" KeyPath="yes"/>
</RegistryKey>
</Component>
</DirectoryRef>
...
<Feature Id="Complete" Title="MyProduct">
<ComponentRef Id="RegistryEntries/>
...
</Feature>
</Product>
...
...
除了
::)末尾缺少的引号外,您在生成过程中是否看到任何警告?蜡烛/灯通常不会移除任何组件,如果它们在某处被引用。。。