Delphi2007下如何使程序在Win8上用管理员权限运行,就是图标有小盾牌

时间:2023-02-21 22:11:51
我按照网络上的设置方法,编译出来的程序,在XP能运行,
在win8里没有小盾的图标显示,而且打开就报配置错误。
请问还有没有其他的方法能设置,还是说我搜来的是错误的方法?

下面是网络流传的修改方法
Delphi程序必须在资源里面嵌入MANIFEST信息
一 首先编辑一个文件,内容如下:
<?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>
保存为UAC.manifest,这里文件是随意的。特别注意红色的“requireAdministrator”,这个表示程序需要管理员(Administrator)才能正常运行。

二 然后编辑一个RC文件,名称为uac.rc 如下所示:
1 24 UAC.manifest
其中:
1-代表资源编号
24-资源类型为RTMAINIFEST
UAC.manifest-前面的文件名称

三 用brcc32编译这个rc文件为res文件,如下所示:
brcc32 uac.rc -fouac.res

四 在程序里面加入
{$R uac.res}
让Delphi编译的时候,把uac.res编译进exe文件

五 把文件放到vista或win7下运行,就会看程序图标下面显示UAC盾牌标志了。

7 个解决方案

#1


可能是自己程序有问题……单独写个又成功了

#2


good,我来帮你接分,呵呵

#3


问题解决了,接分!

#4


不用那么复杂
只需要project \ options \ 菜单下的 version ifno 选项卡中 的  product name 行填写  setup  即可  

Delphi2007下如何使程序在Win8上用管理员权限运行,就是图标有小盾牌

#5


Delphi2007下如何使程序在Win8上用管理员权限运行,就是图标有小盾牌

#6


引用 3 楼 lyhoo163 的回复:
问题解决了,接分!


我在XE下面测试了,这个好像不行哦。我一直都是用UAC.RES文件的方式实行的。

#7


感谢各位的回复,因为问题自己好了,分数就平分了

#1


可能是自己程序有问题……单独写个又成功了

#2


good,我来帮你接分,呵呵

#3


问题解决了,接分!

#4


不用那么复杂
只需要project \ options \ 菜单下的 version ifno 选项卡中 的  product name 行填写  setup  即可  

Delphi2007下如何使程序在Win8上用管理员权限运行,就是图标有小盾牌

#5


Delphi2007下如何使程序在Win8上用管理员权限运行,就是图标有小盾牌

#6


引用 3 楼 lyhoo163 的回复:
问题解决了,接分!


我在XE下面测试了,这个好像不行哦。我一直都是用UAC.RES文件的方式实行的。

#7


感谢各位的回复,因为问题自己好了,分数就平分了