【问题标题】:C#, UAC, installer, Windows 7C#、UAC、安装程序、Windows 7
【发布时间】:2010-10-07 22:00:35
【问题描述】:

我有一个客户端应用程序,它从服务器下载 Nullsoft 安装程序,并将安装程序作为外部进程运行,动词设置为“runas”。

Nullsoft 安装程序在脚本中也有一行请求提升权限。在 Windows 7 上,这有时会起作用

  • Windows 显示 UAC 对话框
  • 单击确定 允许安装程序运行。

但有时,UAC 对话框永远不会出现,因此安装程序永远不会启动。如果我手动双击同一个安装程序,它总是可以工作,即显示 UAC 对话框等。

最令人困惑的部分是这种行为不一致,在具有完全相同 UAC 设置的同一台机器上,这有时会起作用,而有时会挂起。我也尝试过不同的 UAC 级别,但还是失败了。

有什么想法吗?

【问题讨论】:

    标签: c# windows-7 uac nsis


    【解决方案1】:

    您将 RequestExecutionLevel 设置为什么? 只需将其设置为“RequestExecutionLevel admin”就足够了,无需使用 runas 动词,只需使用 ShellExecute 启动进程即可。 (RequestExecutionLevel 仅适用于 Vista 及更高版本,当 UAC 开启时,使用 userinfo nsis 插件来涵盖其他情况)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-03
      • 1970-01-01
      • 2011-05-02
      • 2012-05-14
      • 2011-07-20
      • 2011-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多