zoukankan      html  css  js  c++  java
  • Delphi编译的程序如何获取管理员权限

    1.制作manifest文件

     1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
     2 <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
     3 <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
     4 <security>
     5 <requestedPrivileges>
     6 <requestedExecutionLevel level="requireAdministrator" uiAccess="false">
     7 </requestedExecutionLevel>
     8 </requestedPrivileges>
     9 </security>
    10 </trustInfo>
    11 <dependency>
    12 <dependentAssembly>
    13 <assemblyIdentity type="win32"
    14 name="Microsoft.Windows.Common-Controls"
    15 version="6.0.0.0"
    16 processorArchitecture="x86"
    17 publicKeyToken="6595b64144ccf1df"
    18 language="*">
    19 </assemblyIdentity>
    20 </dependentAssembly>
    21 </dependency>
    22 </assembly>

    用记事本保存为:UAC.manifest

    2.第二步对于D7和XE系列有差异。

    (1)XE系列

    如上图所示,选择 Use custom manifest,然后选择刚刚保存的文件。

    这里最好选择All configurations,这样无论是调试模式还是release都支持了。

    然后编译工程,输出exe文件。可以看到小盾牌了。

    运行程序,会弹出提权确认框:

    (2)Delphi 7

    D7里面是没有这个设置的,可以通过资源文件来实现。

    a.新建一个文件文件,输入内容如下:

    1 24 "UAC.manifest"

    1-代表资源编号

    24-资源类型为RTMAINIFEST

    将文件保存为:uac.rc

    b.将RC文件编译为资源文件

    brcc32 uac.rc 

    得到uac.RES 文件,注意uac.rc的路径。

    c.修改工程文件(DPR)

    在{$R *.RES}后面追加

    {$R 'uac.RES'}

    d.编译工程文件,得到EXE文件

    小盾牌看见了吧?

    运行EXE

    提权确认框也弹出来了。


  • 相关阅读:
    mysql 基础整合大全
    django 完整日志配置
    rest_framework视图基类与五个扩展类
    Nginx + uWSGI 配置django---终极版
    小程序 textarea ios兼容解决
    小程序调取数字键盘,没有小数点解决办法
    消息框-提示框
    h5页面长按保存图片
    解决浏览器自动填充input
    angularJS(2)
  • 原文地址:https://www.cnblogs.com/codingnote/p/5010040.html
Copyright © 2011-2022 走看看