2008年2月15日 星期五

用 Visual Studio 2005 開發俱 UAC 機制軟體

Microsoft 在 Windows Vista 中新增了一個重要的安全機制,就是 User Account Control (UAC),也就是軟體在執行會用到受保護的資源時,會跳出一個對話方塊詢問是否執行,確定後就會以 Administrator 身份來執行程式,雖然麻煩了一點,不過也帶來可靠的安全性,然而在 Visual Studio 2005 中要怎麼使用這個機制呢?

1. 首先,開啟專案屬性的頁面, 在安全性這個分頁中,將 "啟用 ClickOnce 安全性設定" 勾選,然後在方案總管中就會出現一個名為 app.manifest 的檔案

2. 編輯 app.manifes,在 <security> 與 </security> 中,加入以下項目:
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>

其中 level 的值可以是:

asInvoker:不要求權限,使用 parent process 的權限。
highestAvailable:要求 parent process 的最高權限。
requireAdministrator:要求 Administrator 權限。

3. 存檔後重新編譯,產生的執行檔就俱有 UAC 機制了。

沒有留言: