针对 Windows 7 和 Vista 启用 UAC 的安装/卸载

发布于 2024-11-16 18:22:23 字数 221 浏览 3 评论 0原文

我正在使用 NSIS(HM NISedit 2.0.3 用于编辑器)来构建我的应用程序的设置。对于带有 UAC 的 Windows(7 和 vista),有时不会安装,直到我右键单击 mysetup.exe 并说以管理员身份运行(卸载也是如此)。当我关闭 UAC 时,不会发生这种情况。请建议我如何在安装继续之前在我的脚本中禁用 UAC 或解决此 UAC 问题的任何其他方法? 请针对我目前面临的上述问题提出一些解决方案。

i am using NSIS(HM NISedit 2.0.3 for editor) for building setup(s) of my application. For Windows with UAC ( 7 and vista) it sometimes does not install until i right click on mysetup.exe and say run as administrator(same is the case for uninstallation).This does not happen when i turn the UAC off. Please suggest me how to disable the UAC within my script before installation proceeds OR anyother way to overcome this UAC issue?.
Kindly suggest some solution for the above issue i am currently facing.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

终陌 2024-11-23 18:22:23

如果您需要管理员权限,您应该使用 requestexecutionlevel 来标记安装程序(如果您安装到 $programfiles 或写入 HKEY_LOCAL_MACHINE):

RequestExecutionLevel admin ;Require admin rights on NT6+ (When UAC is turned on)

!include LogicLib.nsh

Function .onInit
UserInfo::GetAccountType
pop $0
${If} $0 != "admin" ;Require admin rights on NT4+
    MessageBox mb_iconstop "Administrator rights required!"
    SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
    Quit
${EndIf}
FunctionEnd

如果您仅为当前用户安装($appdata/$localappdata 和 HKEY_CURRENT_USER),您只需使用 请求执行级别用户

If you need admin rights you should use requestexecutionlevel to mark the installer (If you install into $programfiles or write to HKEY_LOCAL_MACHINE):

RequestExecutionLevel admin ;Require admin rights on NT6+ (When UAC is turned on)

!include LogicLib.nsh

Function .onInit
UserInfo::GetAccountType
pop $0
${If} $0 != "admin" ;Require admin rights on NT4+
    MessageBox mb_iconstop "Administrator rights required!"
    SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
    Quit
${EndIf}
FunctionEnd

If you are installing for the current user only ($appdata/$localappdata and HKEY_CURRENT_USER) you can just use RequestExecutionLevel user

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文