【问题标题】:NSIS, run one action as administatorNSIS,以管理员身份运行一项操作
【发布时间】:2011-07-29 16:50:21
【问题描述】:

我的安装只需要用户权限,但此安装应删除以前的文件或调用卸载程序(如果存在)

NSIS 有没有办法以管理员身份运行一项操作(DeleteFile、RunExe)?

【问题讨论】:

  • 如果安装只需要用户权限,怎么卸载需要管理员权限?

标签: uac nsis


【解决方案1】:

提升是每个进程的,一旦提升就无法返回。

您应该创建一个小助手 nsis 应用程序来执行您所需的操作(仅 RequestExecutionLevel admin 是不够的,您还需要使用 UserInfo::GetAccountType)使用带有 runas 动词的 ShellExecute 来启动提升的进程。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-22
    • 2012-02-07
    • 2016-09-20
    • 2010-11-26
    • 2012-05-28
    • 2011-03-24
    • 2021-08-10
    • 1970-01-01
    相关资源
    最近更新 更多