2023年1月7日 星期六

C#入門 執行程式出現"要求的作業需要提升的權限"

在 Vista 之後的作業系統支援了 UAC 的功能,

在執行程式的時候,

有時會遇到需要較高權限的提示,

此次就是要教大家

C#入門:執行程式出現"要求的作業需要提升的權限"

當執行設計的程式出現 "要求的作業需要提升的權限",

表示使用到的功能需要管理者權限,


在 C#做法中除了撰寫程式碼讓程式以管理員運行之外,

就是出現提示視窗要求使用者同意授予管理者權限,

首先第一步到專案總管中加入項目,


新增一個"應用程式資訊清單檔案",

也就是 app.manifest 這個檔案,

若專案中本身就有這個檔案的話就不需要再次新增


並在專案屬性設定中找到"應用程式",

將"資訊清單"指定由此檔案來管理


接著打開 app.manifest ,

這邊註解有提到若要改變控制層級必須設定為其中一種:

  • 一般身分開啟
level="asInvoker" (預設是這種)

  • 進階身分開啟
level="requireAdministrator"

  • 最高身份開啟
level="highestAvailable"

此處範例中選擇將其改為

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />



這樣一來,

程式執行的時候會詢問使用者是否給予權限,

同意的話就能讓這個程式正常執行

沒有留言: