前言
我們知道,在有些時候,我們的程式是需要管理員權限的,沒有管理員權限有些操作就無法執行,
有人說,直接右鍵,以管理員權限啟動不就可以了!
這樣確實可以解決,但是我們要站在普通用戶的角度來看一些問題,如果一些操作失敗,用戶不知道是權限不足的原因呢?用戶不會開啟管理員權限呢?作為開發者,有些東西必須站在用戶的角度來看,
軟體:VS2012
操作
首先得寫好表單式程式
扣代碼…
扣代碼…
扣代碼…
重要的事情說三遍!!!
正常生成的exe檔案

擁有管理員權限的exe檔案

可以觀察圖示的右下角有沒有管理員Logo
- 沒有就代表沒有管理員權限
- 有就代表應有最高管理員權限
生成
點擊專案,點擊屬性

點擊安全性,打開ClickOnce

然后關掉屬性界面,查看解決方案多了一個app.manifest檔案

打開app.manifest把默認的配置修改一下,通過代碼的注釋,可以知道需要修改的節點是【requestedExecutionLevel】

注釋已經說得很詳細了

asInvoker : 如果選這個,應用程式就是以當前的權限運行,
highestAvailable: 這個是以當前用戶可以獲得的最高權限運行,
requireAdministrator: 這個是僅以系統管理員權限運行,
找到<requestedExecutionLevel level="asInvoker" uiAccess="false" />
把其改為<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
這里是重點!!!
這時候修改完成,按下F5進行除錯,通常會收到如下的錯誤提示:【ClickOnce 不支持請求執行級別“requireAdministrator”】,
事情好像發生了相互矛盾,上面開啟【ClickOnce】便自動創建了app.manifest,現在修改了app.manifest卻提示:ClickOnce 不支持請求執行級別“requireAdministrator”,
解決方法是:只要把【啟用ClickOnce安全設定】不勾選就可以了,

如果操作步驟正確,按下F5進行除錯,會彈出如下的提示框,VS具有提升的權限
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/258367.html
標籤:其他
上一篇:HGAME2021刷題補題記錄
