使 Inno Setup 打包出的安装程序以管理员身份运行
在最新的 6.2 版本中,已经不需要这么麻烦了,直接在脚本中的 [Setup] 区域增加设置属性即可,如:
[Setup]
; 以管理员身份运行
PrivilegesRequired=admin
另外在安装最后,如果设置了需要选择是否运行某个程序(即,使用了 postinstall 选项)
当用户勾选了运行,Inno Setup 会默认以当前用户的权限进行运行
若当前用户不是管理员,而此程序又需要管理员权限,则会因权限不足报错。
如果已设置 PrivilegesRequired=admin,则可以在此处增加 runascurrentuser 选项
则运行时会保持与安装程序使用相同的用户权限(即,管理员权限)。
如:
[Run]
; 安装完成后运行 Filename: "{app}\{#MyAppExeName}"; Description: "立即运行“{#MyAppName}”"; Flags: nowait postinstall skipifsilent runascurrentuser
↓↓↓↓↓↓以下是针对 5.x 版本的说明,目前已不再需要。↓↓↓↓↓↓
找到 Inno Setup 安装目录下的 SetupLdr.e32 文件,用 Resource Hacker 将其中的 Manifest 修改一下:
改为:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
如图:
再重新编译生成的安装包,就都是以管理员身份运行了~
来源:http://blog.csdn.net/x356982611/article/details/50386824
顺便记录下 Resource Hacker 的下载地址:
原版:http://www.angusj.com/resourcehacker/
汉化:http://bbs.kafan.cn/thread-1826109-1-1.html
输了你,赢了世界又如何...
分类:
Inno Setup
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 易语言 —— 开山篇
2014-03-24 无法为具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序加载在应用程序配置文件中注册的实体框架提供程序。。。。。。