在 Innosetup 中:如果需要,PrivilegesRequired=none 脚本可以安装 DotNet FW 吗?

In Innosetup: can a PrivilegesRequired=none script install the DotNet FW if needed?

我的脚本检测是否安装了 .Net FW,如果没有,它会启动安装程序。问题在于,由于 PrivilegesRequired=none,会弹出一条错误消息,而不是询问管理员密码。

我想保留 PrivilegesRequired=none 因为如果用户已经拥有 .Net FW,我不想 him/her 为管理员密码操心。

感谢您的帮助!

这是TLama回复后的解决方案:

if not ShellExec('runas', ExpandConstant('{tmp}\mu_.net_fx_4_5_1_windows_vistasp2_windows_7sp1_windows_8_windows_server_2008sp2_windows_server_2008r2sp1_windows_server_2012_x86_x64_3009816.exe'), '/q /norestart', '', SW_SHOW, ewWaitUntilTerminated, ResultCode) then
    begin
      // you can interact with the user that the installation failed
    end;