从Vista开始,系统引入了UAC用户控制功能,即普通用户运行exe软件安装程序,支持使用普通账户/管理员身份分别进行安装,但是msi安装包只支持默认账户进行安装,不支持以管理员身份方式运行安装包,那如何为msi包赋予更大的权限呢?
这时,我们可以利用注册表,为msi安装包添加一项”以管理员身份运行“的功能。
参考教程:(以Win8.1测试环境,7-zip.msi演示为例,该方法也支持Win7/Win8平台)
- Win+R,打开运行,输入regedit
- 打开注册表编辑器(出现用户账户控制时,选择是)
- 定位到HKEY_CLASSES_ROOTMsi.Packageshell路径,右击shell,新建“runas”项
- 在runas项右侧,更改默认字符串,为“以管理员身份运行”值
- 在shell下,继续新建“command”项,更改默认字符串为msiexec /i“%1”
- 退出注册表编辑器,生效。
这时,7-zip.msi安装包右键菜单中出现了“以管理员身份运行”的功能,即可调用管理员账户权限进行运行。
但在日常使用中,普通用户都能使用默认账户正常安装msi格式的安装包,如果遇到个别的msi包,需要管理员账户权限进行安装时,这个小技巧就能派上用途。