程序需要以管理员权限运行,是通过在资源里面嵌入MANIFEST信息实现的,可是会带来一个问题.
以管理员权限运行,程序的界面就会扛看起来像98的主题啊,应该怎么解决啊?delphi的版本是2010,系统是win7
没加uac.res的界面加uac.res,以管理员权限运行的界面
管理员权限delphi界面
以管理员权限运行,程序的界面就会扛看起来像98的主题啊,应该怎么解决啊?delphi的版本是2010,系统是win7
没加uac.res的界面加uac.res,以管理员权限运行的界面
管理员权限delphi界面
project->application->runtime themes设置成none
在Source\VCL目录下应该有这样两个文件sample.manifest和WindowsXP.rc,可以通过如下方法处理:1.可以通过修改sample.manifest把其中的
XML code<trustInfoxmlns="urn:schemas-microsoft-com:asm.v3"><security><requestedPrivileges><requestedExecutionLevellevel="asInvoker"
uiAccess="false"/></requestedPrivileges></security></trustInfo>
改为
Delphi(Pascal) code<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"><security><requestedPrivileges><requestedExecutionLevel
level="requireAdministrator"
uiAccess="false"/></requestedPrivileges></security></trustInfo>
另存为requireAdmin.manifest2.打开WindowsXP.rc,将内容编辑成
引用1 24 "requireAdmin.manifest"
并另存为requireAdmin.rc3.通过命令行编译成requireAdmin.res
引用brcc32 requireAdmin.rc4.把编译出来的文件requireAdmin.res放到$(BDS)\lib目录下5.在需要的程序当中,打开Project菜单下的Options...菜单项,将Application下面的"Enable runtime themes"的勾选去掉.6.打开Project菜单下的View Source菜单项,然后在
Delphi(Pascal) code{$R *.res}
下面添加一行
Delphi(Pascal) code{$R requireAdmin.res}7.重新编译即可.