Delphi Xe2 后的版本如何让Delphi程序启动自动“以管理员身份运行"

由于Vista以后win中加入的UAC安全机制,采用Delphi开发的程序如果不右键点击“以管理员身份运行”,则会报错。

在XE2以上的Delphi版本处理这个问题已经非常简单了。

右建点击工程,选择“Options”->“Applicaion”下,将Runtime themes项设置为“Use Custom manifest”,点击下方按钮,选择相应的Manifest文件即可。

需要注意的是:Debug和Release模式不同,要进行同样设置

如图:

至于Manifest文件,也就是一个XML文档,原文如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1"
manifestVersion="1.0">
<trustInfo
xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="requireAdministrator"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

时间: 2024-10-05 06:44:37

Delphi Xe2 后的版本如何让Delphi程序启动自动“以管理员身份运行"的相关文章

Delphi生成EXE自动以管理员身份运行

[测试环境]Windows 7 旗舰版 With Sp1,RAD 10 Seattle 1.文本文件:UAC.manifest <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

VS 设置编译后的程序可以以管理员身份运行

1.首先,创建一个文件命名为 XXX.exe.manifest, 并将以下内容复制到文件 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdenti

Delphi XE2 编译ralease版本,无法添加UAC解决方法

我今天把一个原来是Delphi2007的工程升级到了Delphi XE2,在编译ralease版本时候,发现无法添加UAC,我觉得可能是升级的原因,随后我用XE2新建了一个工程,但是在编译ralease版本时候,发现仍然无法添加UAC,但是debug版本可以加入UAC.通过多次尝试依然无法解决,最后我把工程所在目录名称修改了一下,这下子可以添加UAC了,无论哪个版本都可以添加UAC了.不知道什么原因,反正这样就可以了,如果你遇到类似问题,不妨修改一下工程目录名称试一试!

DELPHI XE2 采用 JSON 的方式来序列化对象

DELPHI XE2 采用 JSON 的方式来序列化对象 以下代码测试通过.问题是里面的中文,在反序列化后是乱码. 1. 序列化对象为字符串,Subject 里面的中文看起来正常,仍然是中文: 2. 反序列化为对象后,Subject 里面的中文是乱码. XE2 处理 Unicode 还是有问题啊. TItemRecord = class private FID: string; FSubject: string; FADate: TDateTime; published property ID:

Delphi XE2 16进制转10进制《LceMeaning》

以下在编写IC卡项目时出现卡号转换错误时的解决方法,在XE2下测试正常.================================================ uses math; function HexToDec(Hex : string) : string; var i : integer; res : real; len : integer; begin len := length(Trim(Hex)); for i := 1 to len do begin case Hex[

delphi xe2 opencv 学习

安装环境 delphi xe2 + opencv opencv 从下面的地方下载  https://github.com/Laex/Delphi-OpenCV然后按照 此网站的 说明 一项以项的 安装.重点在这里:安装opencv 的时候 代码有错误 {$ endif} 要修改为{$ ifend} 而且必须编译一次 发现一个错误 ,修改一个. 不能全部一次替换修改,因为有些不能改的(本来就正确).说不清道不明的,反正我这样搞完就 正常了. 另外一个需要注意的地方是: 32位系统好办. 如果自己的

关于Delphi XE2的FMX的一点点研究之消息篇

Delphi XE2出来了一阵子了,里面比较抢眼的东西,除了VCLStyle这个换肤的东西之外,另外最让人眼亮的应该是FMX这个东西了.万一的博客上都连载了一票的关于FMX的使用心得了.我还是没咋去关注,因为技术这个东西,天天在变,跟着他跑,俺伤不起啊!直到今天,看了一下盒子,然后群中也有人说关于FMX在Windows下面如何来发送消息的问题,说发送不了.实际上,FMX这个东西是一套跨平台机制的GUI类库,消息这个东西只是Windows下面的,所以发送消息这个说法应该不算通用.不过加以研究应该可

Delphi XE2 生成的.exe 在未安装有Delphi的电脑上运行提示 “丢失 rtl160.bpl”

解决方案: XE2中加入了多平台的概念,默认的Release模式,也是带包编译,带运行时库的,所以,需要手工设置一下工程选项: 打开工程以后,Project-->Options-->左侧树列表选中C++ Linker-->右侧上方的Target选择Release configuration 下的 32-bit Windows platform-->取消 Link with Dynamic RTL 的对钩-->左侧树列表选中 Packages 下的 Runtime Packag

让Delphi XE2程序支持UAC

在win7下,开发的程序有的时候莫名其妙就不能正常工作了,其实都是因为权限不够,要想能够正常运行,就需要获得管理员权限,这就需要处理UAC.具体方法如下: 一,制作"uac.manifest"文件.新建一个名为"uac.manifest"的文件,在里面加入如下内容: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assem