• 编写适合windows 7 平台的软件,给程序添加UAC认证


    Delphi程序必须资源里面嵌入MANIFEST信息
    一、 首先编辑一个文件内容如下:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
      <assemblyIdentity
      type="win32"
      name="DelphiApplication"
      version="1.0.0.0" 
      processorArchitecture="*"/>
      <dependency>
      <dependentAssembly>
      <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0"
      publicKeyToken="6595b64144ccf1df"
      language="*"
      processorArchitecture="*"/>
      </dependentAssembly>
      </dependency>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> 
    <security> 
    <requestedPrivileges> 
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/> 
    </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

    四 、在程序program文件{$R *.res}后面加入
    {$R uac.res}

    同时去掉Project ->Options->Application->Enable runTime themes 的“√”,然后重新编译exe文件即可

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

     
  • 相关阅读:
    Adapter 适配器模式
    词法分析器的作用
    文法、语言、正则表达式
    基于Windows的套接字相关函数及示例
    迭代器和生成器
    反射的使用
    hasattr、getattr、setattr反射
    socket建立tcp、udp链接
    异常处理
    描述符——类型检测,待补充……
  • 原文地址:https://www.cnblogs.com/onionhacker/p/3427886.html
Copyright © 2020-2023  润新知