Inno Setup CreateProcess 失败:代码 740(Inno Setup打包的程序提高为管理员权限)

原文参考 http://www.javashuo.com/article/p-srgjcbdj-cp.htmlhtml

http://blog.csdn.net/x356982611/article/details/50386824/app

一、问题描述

Inno Setup打包的程序在Win7 64位系统上安装,安装步骤最后一步若选中运行程序,会跳出一个错误提示框。工具

这是由于64位win7系统运行程序时须要管理员权限,而打包的文件并无这个权限就试图直接运行。解决方案:为安装包添加管理员权限。ui

二、添加管理员权限

(1) 在.iss文件的[Setup]节点添加 PrivilegesRequired=admin.net

(2) 进入安装目录,找到文件SetupLdr.e32,这是一个二进制配置文件,须要用ResourceHacker.exe这个工具修改htm

   找到<requestedExecutionLevel level="asInvoker" uiAccess="false"/></requestedPrivileges>,blog

修改成<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/></requestedPrivileges>资源

(3) 修改资源后别忘了编译一下,而后保存修改后的文件,并替换原来的SetupLdr.e32文件get

三、删除管理员权限io

(1) 在[Setup]节点添加 PrivilegesRequired=none 或者 PrivilegesRequired=lowest

(2) 在[Setup]节点修改 DefaultDirName(安装路径)的值,默承认能是DefaultDirName={pf}\{#MyAppName},

  不要带{pf}, {win}, {sys}这些变量值,好比设置成DefaultDirName={localappdata}\{#MyAppName}

相关文章
相关标签/搜索