无法获得Inno Setup postinstall运行项目runasoriginaluser

时间:2017-12-30 15:23:10

标签: inno-setup

我正在Windows 10中测试Inno Setup 我有PrivilegesRequired=lowest

在包含[Run]的{​​{1}}部分中,我启动了Excel工作簿 此工作簿为启动Excel的用户更改Excel环境 默认情况下,该用户是标准用户,这就是我想要的 但是,如果使用右键单击提升权限运行,则该用户是管理员用户 如何强制Excel为标准用户启动?

我尝试过标记postinstallrunasoriginaluser,但这些都不会强制Excel为标准用户运行。

1 个答案:

答案 0 :(得分:1)

如果您以管理员身份明确运行安装程序,则无法访问用户会话。 (请注意,它不是Inno Setup限制,它是Windows的工作方式。)

您所能做的就是检测管理员权限并通知用户不以管理员身份运行安装程序。

[Code]

function InitializeSetup(): Boolean;
begin
  Result := True;

  if (GetWindowsVersion >= $05010000) and
     IsAdminLoggedOn then
  begin
    MsgBox('Do not run this installer "As Administrator".', mbError, MB_OK);
    Result := False;
  end;
end;

有关详细信息,请参阅Installing application for currently logged in user from Inno Setup installer running as Administrator