C#如何調用以管理員身份運行的cmd命令提示符

原文地址:http://www.yishimei.cn/network/296.html

windows自從vista、win7、win8/8.1以來,命令行提示符分爲兩種模式,一種是普通用戶模式,一種的管理員模式,很多情況下,我們的程序需要在命令提示符(管理員身份)的狀況下運行,但是c#調用的時候一般都是普通用戶的cmd命令,雖然可以通過右鍵 - 以管理員身份運行該軟件,但是我們用c#開發的軟件,不能告訴每一個用戶讓他們都以管理員身份運行吧?今天亦是美網絡就給大家介紹一個簡單的方法,輕鬆實現c#調用以管理員身份運行的命令提示符。

筆者的環境:win8.1專業版 64位 + visualstudio Ultimate 2013,開發環境選擇的是.net framework4.0,(爲了更好的兼容win7及以前的版本)

在開始之前,筆者也在網上苦苦搜尋了一些辦法,但是使用較多的是是給cmd.exe指定運行目錄:c:\windows\system32\cmd.exe,其實網上已經有人說了這種辦法行不通,亦是美網絡也親自試驗過,這種方法確實行不通,起碼在筆者的環境下沒有成功,那麼我們採用下面的辦法。

其實要以管理員的身份運行cmd命令提示符,我們只需要讓c#開發的程序自身以管理員身份運行就可以了,我們打開visual studio - 解決方案資源管理器 -右鍵項目名稱 - 屬性 ,彈出下面的窗口:


默認打開的就是“安全性”,我們在“啓用ClickOnce安全設置”前面打勾,然後再返回解決方案資源管理器界面,這時,在項目名稱下面會多出一個“app.manifest”的文件,我們選中它,找到代碼段: <requestedExecutionLevel level="asInvoker" uiAccess="false" />,將其改爲:<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />,改過後,不要急於重新編譯生成,我們重新返回上圖那個界面,將“啓用ClickOnce安全設置”前面的勾去掉後再編譯運行,不然程序會報錯無法運行。

按照上面的步驟設置以後,C#開發出來的程序就會自動以管理員身份的運行了,當然,它裏面的命令提示符cmd也自動以管理員身份運行了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章