windows-vista – 在Vista上的Windows Installer中使UAC可选

我已经写了一个msi文件,在UI阶段提供“每用户”或“全部”安装选项,现在发现安装程序在Vista上失败:

>如果我只是重新使用适用于XP的安装程序,Vista将会触发UAC提示,即使是“每用户”安装,使安装无意义
>如果我在PID_WORDCOUNT的第3位关闭UAC,Vista将不会再调用UAC,所以即使用户有权安装到机器注册表(例如),也不会发生特权提升,所以安装失败。

那么,如何避免安装程序在真正需要的时候调用UAC?或者,即使设置了第3位,如何以编程方式请求UAC?

不幸的是,Windows Installer没有提供一种方法来创建一个可以安装每台机器和每个用户的单个软件包,但只能在每台机器上为UAC提示。问题是可以抑制UAC提示的位被存储在SummaryInformation流中,并且在程序包正在执行时不可修改。

相关文章

文章浏览阅读2.2k次,点赞6次,收藏20次。在我们平时办公工作...
文章浏览阅读1k次。解决 Windows make command not found 和...
文章浏览阅读3.2k次,点赞2次,收藏6次。2、鼠标依次点击“计...
文章浏览阅读1.3w次。蓝光版属于高清版的一种。BD英文全名是...
文章浏览阅读974次,点赞7次,收藏8次。提供了更强大的功能,...
文章浏览阅读1.4w次,点赞5次,收藏22次。如果使用iterator的...