UAC即Windows 用戶帳戶控制級別
UAC是專門控制用戶帳戶訪問控制的,簡單說UAC就是控制用戶可以訪問Windows系統中的中的哪些信息,不可以訪問哪些信息以及安裝時候UAC(用戶賬戶控制)會根據當前系統的用戶賬戶控制級別提示/不提示運行安裝信息
UAC(用戶賬戶控制)設置有2種方式
1、控制面板\用戶帳戶\用戶帳戶 選擇 更改用戶帳戶控制設置
2、通過程序處理app.manifest清單選項設置requestedExecutionLevel level
通過程序處理app.manifest清單選項設置requestedExecutionLevel level,
app.manifest清單選項文件創建有2種方式
1、項目右鍵,點擊添加文件,找到程序清單文件 創建app.manifest清單文件
2、可以通過 項目右鍵 選擇 屬性 安全性 勾選 啟用ClickOnce 安全設置(N) 自動生成一個app.manifest清單文件,然后取消勾選 啟用ClickOnce 安全設置(N)
上述2種方式創建app.manifest清單文件之后需要設置,如下:
1、如果事想在程序運行的時候擁有管理員權限的話,需要設置requestedExecutionLevel level="requireAdministrator" uiAccess="false",設置以后就可以操作一寫需要特殊權限的文件了,如:C:\program files ,C:\program files x86 ,C:\Windows\system32,注冊表讀寫等等
2、設置requestedExecutionLevel中的level可以設置需要的權限功能,而uiAccess可以用來做一些其他處理,例如 需要特殊權限的文件的讀寫,
可以設置requestedExecutionLevel level="requireAdministrator" uiAccess="false",uiAccess也可以設置程序窗體的置頂,
這里的程序置頂可以設置比系統界面更高的置頂,也就是說可以比一些系統級別的置頂還要高,如任務管理器一樣絕對置頂
效果如下:
新建winform窗體項目,添加app.manifest清單文件之后需要設置 requestedExecutionLevel level="asInvoker" uiAccess="true",
App.Manifest 文件中設置 requestedExecutionLevel level="asInvoker" uiAccess="true"

設置窗體的2個屬性

注意:可能遇到的問題
解決方法是“以管理員權限啟動此程序”。
啟動效果如下:
原文參考鏈接:http://blog.walterlv.com/post/run-desktop-application-above-windows-application.html