天天看點

如何自動以管理者身份運作.NET程式?

windows 7和vista提高的系統的安全性,同時需要明确指定“以管理者身份運作”才可賦予被運作軟體比較進階的權限,

比如通路系統資料庫等。否則,當以普通身份運作的程式需要通路較進階的系統資源時,将會抛出異常。

  如何讓程式在啟動時,自動要求“管理者”權限了,我們隻需要修改app.manifest檔案中的配置項即可。

  app.manifest檔案預設是不存在的,我們可以通過以下操作來自動添加該檔案。

(1)進入項目屬性頁。

(2)選擇“安全性”欄目。

(3)将“啟用ClickOnce安全設定”勾選上。

  現在,在Properties目錄下就自動生成了app.manifest檔案,打開該檔案,将trustInfo/security/requestedPrivileges節點的requestedExecutionLevel的level的值修改為requireAdministrator即可。如下所示:

<requestedPrivilegesxmlns="urn:schemas-microsoft-com:asm.v3">

<requestedExecutionLevellevel="requireAdministrator"uiAccess="false"/>

</requestedPrivileges>

  記住,如果不需要ClickOnce,可以回到項目屬性頁将“啟用ClickOnce安全設定”不勾選。  

  接下來,重新編譯你的程式就OK了。

繼續閱讀