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
四 、在程式program檔案{$R *.res}後面加入
{$R uac.res}
同時去掉Project ->Options->Application->Enable runTime themes 的“√”,然後重新編譯exe檔案即可
五 、把檔案放到vista或win7下運行,就會看程式表徵圖下面顯示UAC盾牌標誌了。
一、 首先編輯一個檔案,內容如下:
<?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
四 、在程式program檔案{$R *.res}後面加入
{$R uac.res}
同時去掉Project ->Options->Application->Enable runTime themes 的“√”,然後重新編譯exe檔案即可
五 、把檔案放到vista或win7下運行,就會看程式表徵圖下面顯示UAC盾牌標誌了。