在Wix中使用registrysearch时未读取注册表
我一直在互联网上搜索关于注册表搜索问题的答案 我有一个更大的wix文件,但我不能得到多个功能的工作和它的功能条件,所以我已经创建了一个基本的测试wix文件,以了解wix的功能,但不能得到我需要的结果 代码如下:在Wix中使用registrysearch时未读取注册表,wix,wix3.5,Wix,Wix3.5,我一直在互联网上搜索关于注册表搜索问题的答案 我有一个更大的wix文件,但我不能得到多个功能的工作和它的功能条件,所以我已经创建了一个基本的测试wix文件,以了解wix的功能,但不能得到我需要的结果 代码如下: <Property Id="BASICTEST" Secure="yes" > <RegistrySearch Id="_Regsearch_Basic" Root="HKLM" Key="SOFTWARE\TGSL\BasicInstaller" Name
<Property Id="BASICTEST" Secure="yes" >
<RegistrySearch Id="_Regsearch_Basic" Root="HKLM"
Key="SOFTWARE\TGSL\BasicInstaller" Name="BASIC1" Type="raw" >
</RegistrySearch>
</Property>
<Property Id="BASICTEST1" Secure="yes" >
<RegistrySearch Id="_Regsearch_Test" Root="HKLM"
Key="SOFTWARE\TGSL\BasicInstaller" Name="TEST1" Type="raw" >
</RegistrySearch>
</Property>
<Feature Id="BasicFeature" Title="BasicFeat" Level="0">
<Condition Level="1">NOT (BASICTEST="0")</Condition>
<ComponentRef Id="BasicTest"/>
</Feature>
<Feature Id="TestFeature" Title="TestFeat" Level="0" >
<Condition Level="1">NOT (BASICTEST1="0") </Condition>
<ComponentRef Id="BasicTest1"/>
</Feature>
非(基本测试=“0”)
不是(基本测试1=“0”)
我已经设置了四个注册表项,所有值都是1(BASIC1=1和TEST1=1),以测试它使用的注册表(在SOFTWARE\TGSL\BasicInstaller中2个用于64位,在SOFTWARE\TGSL\BasicInstaller中2个用于32位)
我知道它默认为32位,除非另有说明,但仍然没有。我正在使用进程监视器来测试我的.msi文件是否正在读取注册表…它不是
我在安装.msi时创建了一个日志文件,在读取注册表时收到一个错误代码:
AppSearch:属性:BARRIETEST,签名:\u Regsearch\u BarrieTest1
注:1:2262:2:签名3:-2147287038
注:1:1402 2:HKEY_LOCAL_MACHINE32\SOFTWARE\TGSL\BasicInstaller 3:2
错误代码没有找到该文件,但它看起来像是在一个不存在的目录中查找,当我将其更改为win64=“yes”时,它会在HKEY_LOCAL_计算机之后删除32
我曾尝试在wix 2.0中构建此测试脚本,它会很好地搜索注册表,并将属性更改为注册表项“1”的值,因此我对我做错了什么感到困惑
wix 2.0和wix 3.5之间的注册表搜索参数是否存在差异
有谁能建议一个可能的修复方案,或者我如何让这些功能正常工作
请帮助…提前感谢关闭,如问题注释所示,这是一个权限问题,运行安装程序的用户没有足够的权限访问HKEY_LOCAL_机器。如问题注释所示,关闭,这是一个权限问题,运行安装程序的用户没有足够的权限访问HKEY_LOCAL_计算机。我在测试服务器和虚拟机上测试了此示例,效果良好……这是否意味着它可能是我正在使用的visual studio版本(im使用vs 2010)??我的主机正在运行windows 7,如果这也有帮助的话??请尝试禁用您的防病毒软件。这也可能是因为缺少读取这些注册表项的权限。您是否以管理员身份运行安装程序?是的,visual studio已以管理员身份运行,我将尝试关闭防病毒以查看是否有帮助:)我已在测试服务器和虚拟机上测试了此示例,效果良好…这是否意味着它可能是我正在使用的visual studio版本(im使用vs 2010)??我的主机正在运行windows 7,如果这也有帮助的话??请尝试禁用您的防病毒软件。这也可能是因为缺少读取这些注册表项的权限。您是否以管理员身份运行安装程序?是的,visual studio已经以管理员身份运行,我将尝试关闭防病毒以查看是否有帮助:)嗯,将安装程序提升为管理员似乎不是一个好主意,是否有解决此问题的方法?嗯,将安装程序提升为管理员似乎不是一个好主意,有没有解决这个问题的办法?