Wix util:RegistrySearch";“找不到注册表项”;在Win64内使用变量时="$(var.Win64)“;
Wix util:RegistrySearch";“找不到注册表项”;在Win64内使用变量时="$(var.Win64)“;,wix,Wix,[0D30:2BAC][2014-03-21T08:32:03]i001:Burn v3.8.1021.0,Windows v6.1(版本7601:Service Pack 1) [0D30:2BAC][2014-03-21T08:32:03]i000:正在将版本变量“ROIPOSVersion”初始化为值“1.9.26.0” [0D30:2BAC][2014-03-21T08:32:03]i000:正在将版本变量'RegROIPOSVersion'初始化为值'0.0.0' [0D30:2BAC
[0D30:2BAC][2014-03-21T08:32:03]i001:Burn v3.8.1021.0,Windows v6.1(版本7601:Service Pack 1)
[0D30:2BAC][2014-03-21T08:32:03]i000:正在将版本变量“ROIPOSVersion”初始化为值“1.9.26.0”
[0D30:2BAC][2014-03-21T08:32:03]i000:正在将版本变量'RegROIPOSVersion'初始化为值'0.0.0'
[0D30:2BAC][2014-03-21T08:32:03]i000:正在将字符串变量“Win64Version”初始化为值“yes”
[0D30:2BAC][2014-03-21T08:32:04]i000:找不到注册表项。Key='SOFTWARE\MyMan\MyProd'
[0D30:2BAC][2014-03-21T08:32:04]i000:找不到注册表项。Key='SOFTWARE\MyMan\MyProd'
[0D30:2BAC][2014-03-21T08:32:04]i000:找不到注册表项。Key='SOFTWARE\MyMan\MyProd'
[0D30:2BAC][2014-03-21T08:32:04]i000:将数值变量“RegMyAppExists”设置为值0
编辑:我在Visual Studio中也收到以下警告:
警告1“Win64”属性无效-值“$(var.Win64)”根据其数据类型“”无效-名称中不能包含“$”字符(十六进制值0x24)
另外,“只需完全删除Win64,它将自动解决”在64位上不起作用,仍然找不到密钥。我再次尝试了该建议,只是完全删除了Win64属性 它现在能够找到64位的注册表项。我以前一定是弄错了。可能是重复的
<!-- Variables.wxi: -->
<?define Win64 = "yes" ?>
<!-- Product.wxs -->
<?xml version="1.0" encoding="UTF-8"?>
<?include ..\Setup\Variables.wxi ?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Fragment>
<Variable Name="MyAppVersion" Type="version" Value="$(var.ProductVersion)" />
<Variable Name="RegMyAppVersion" Type="version" Value="0.0.0.0" />
<Variable Name="Win64Version" Type="string" Value="$(var.Win64)" />
<util:RegistrySearch Root="HKLM" Key="SOFTWARE\$(var.Manufacturer)\$(var.ProductName)"
Result="exists"
Value="Version"
Variable="RegMyAppExists"
Win64="$(var.Win64)"/>
<util:RegistrySearch Root="HKLM" Key="SOFTWARE\$(var.Manufacturer)\$(var.ProductName)"
Result="value"
Value="Version"
Variable="RegMyAppVersion"
Win64="$(var.Win64)"/>
<util:RegistrySearch Root="HKLM" Key="SOFTWARE\$(var.Manufacturer)\$(var.ProductName)"
Result="value"
Value="LicenseKey"
Variable="RegMyAppLicenseKey"
Win64="$(var.Win64)"/>
[0D30:2BAC][2014-03-21T08:32:03]i001: Burn v3.8.1021.0, Windows v6.1 (Build 7601: Service Pack 1)
[0D30:2BAC][2014-03-21T08:32:03]i000: Initializing version variable 'ROIPOSVersion' to value '1.9.26.0'
[0D30:2BAC][2014-03-21T08:32:03]i000: Initializing version variable 'RegROIPOSVersion' to value '0.0.0.0'
[0D30:2BAC][2014-03-21T08:32:03]i000: Initializing string variable 'Win64Version' to value 'yes'
[0D30:2BAC][2014-03-21T08:32:04]i000: Registry key not found. Key = 'SOFTWARE\MyMan\MyProd'
[0D30:2BAC][2014-03-21T08:32:04]i000: Registry key not found. Key = 'SOFTWARE\MyMan\MyProd'
[0D30:2BAC][2014-03-21T08:32:04]i000: Registry key not found. Key = 'SOFTWARE\MyMan\MyProd'
[0D30:2BAC][2014-03-21T08:32:04]i000: Setting numeric variable 'RegMyAppExists' to value 0