我已经编写了一个msi文件,在UI阶段提供“每用户”或“全部”安装选项,现在发现安装程序在Vista上失败了:
那么:如何在不需要时阻止安装程序调用UAC?或者,即使设置了第3位,我如何以编程方式请求UAC?
答案 0 :(得分:6)
不幸的是,Windows Installer没有提供创建单个程序包的方法,该程序包可以按机器和每个用户进行安装,但仅在每个机器的情况下提示UAC。问题是可以抑制UAC提示的位存储在SummaryInformation流中,并且在程序包执行时不可修改。
答案 1 :(得分:3)
答案 2 :(得分:1)
我通过在MSI包中设置PID_WORDCOUNT的第3位来关闭UAC。我可以为“ALLUSERS”和“PER-USER”安装它,也可以在VISTA机器上的两种模式下为HKLM写入。 您是否必须在安装期间为特权用户获取UAC弹出窗口?