Inno setup Inno安装程序-如果安装程序设置为PrivilegesRequired=lowest,如何使用管理员权限运行应用程序?

Inno setup Inno安装程序-如果安装程序设置为PrivilegesRequired=lowest,如何使用管理员权限运行应用程序?,inno-setup,elevated-privileges,Inno Setup,Elevated Privileges,我想用PrivilegesRequired=lower运行安装程序。如何设置并运行应用程序(dxwebsetup.exe)以使用具有管理员权限的安装程序进行安装 我的代码(): 过程CurStepChanged(CurStep:TSetupStep); 变量 ProgressPage:TOutputProgressWizardPage; 结果代码:整数; 开始 如果CurStep=ssInstall,则 开始 如果选择了IsComponentSelected('DirectX'),则 开始 Pr

我想用
PrivilegesRequired=lower
运行安装程序。如何设置并运行应用程序(dxwebsetup.exe)以使用具有管理员权限的安装程序进行安装

我的代码():

过程CurStepChanged(CurStep:TSetupStep);
变量
ProgressPage:TOutputProgressWizardPage;
结果代码:整数;
开始
如果CurStep=ssInstall,则
开始
如果选择了IsComponentSelected('DirectX'),则
开始
ProgressPage:=CreateOutputProgressPage('安装预请求','');
ProgressPage.SetText('安装DirectX…','');
ProgressPage.Show;
尝试
提取临时文件('dxwebsetup.exe');
StartWaitingForDirectXWindow;
Exec(ExpandConstant('{src}\\ u Redist\dxwebsetup.exe'),'',,SW_SHOW,
EWWAIT未过滤,结果代码);
最后
停止等待DirectXWindow;
进行页面隐藏;
结束;
结束;
结束;
结束;
runas
动词一起使用,而不是
Exec

ShellExec('runas',ExpandConstant('{src}\\\u Redist\dxwebsetup.exe'),'','',SW\u SHOW,
EWWAIT未过滤,结果代码);

当当前的Inno安装程序在没有管理员权限的情况下运行时,您将收到UAC提示。

是否可以避免出现这样的消息:“是否允许以下程序对此计算机进行更改?”@NicoZ通过命令行禁用用户帐户控制并重新启用,为此,请从pascal脚本运行这些命令。在Google中搜索Enable或disable UAC CMD@GTAVLover我找到的所有解决方案都需要重新启动系统。当然,您无法避免UAC提示!这将是一个可怕的安全漏洞@GTAVO在没有管理员权限的情况下运行安装程序。如果没有管理员权限,则无法禁用UAC提示。