我正在尝试为我的.msi程序包部署添加启动条件,但它无法正常工作。我想检查目标机器中是否启用了UAC。我对注册表搜索的价值是:
Property: UACSTATUS
RegKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
Root: vsdrrHKLM
Value: EnableLUA
该值为REG_DWORD类型。 1表示启用,0表示禁用。
然后我创建了启动条件:
(Name): UACVerification
Condition: UACSTATUS = 0
InstallUrl: <left blank for now>
Message: You must disable UAC prior to install this application.
问题是:它不起作用。在我的机器上测试(禁用了UAC),条件中0或1的比较都返回false,并且不允许我继续安装。
REG_DWORD类型不是数字?我尝试使用引号(“0”或“0”),但它也不起作用。
答案 0 :(得分:0)
我会查看HKEY设置。确保您正在检查HKEY_CURRENT_USER? (或HKEY_LOCAL_MACHINE)。我过去遇到过类似的问题,如果我的记忆力正常,那么这就解决了我。
哦,如果这证明是正确的,那么我相信你弄错的原因是因为在某些分支上,系统或UACSTATUS不存在。
答案 1 :(得分:0)
REG_DWORD类型被视为boolean。
0 =假 1 =真