C 程式如何以管理員許可權執行

2021-09-09 09:02:40 字數 940 閱讀 8506

在vista 和 windows 7 及更新版本的作業系統,增加了 uac(使用者賬戶控制) 的安全機制,如果 uac 被開啟,使用者即使以管理員許可權登入,其應用程式預設情況下也無法對系統目錄、系統登錄檔等可能影響系統正常執行的設定進行寫操作。這個機制大大增強了系統的安全性,但對應用程式開發者來說,我們不能強迫使用者去關閉uac,但有時我們開發的應用程式又需要以 administrator 的方式執行,如何實現這樣的功能呢?

下面演示 c# 程式如何實現提示使用者以管理員許可權執行。

本例以winform程式演示,新建一專案生成後進行相應修改:

方法一:通過 system.diagnostics.process.start() 方式啟動:

實現方法: 修改預設生成的program檔案,修改後的**如下:

static class program

else

;try

catch}}

}

效果:由於是通過system.diagnostics.process.start() 方式外部呼叫啟動,所以直接通過vs執行時,是不會提示vs也需要管理員許可權,只有程式本身需要管理員許可權,與生成應用程式的程式不同。

第二種方法(本人未測試)

通過新增應用程式清單檔案:

在 專案 上 新增新項 選擇「應用程式清單檔案」 然後單擊 新增 按鈕

修改為:

重新生成專案,再次開啟程式時就會提示 需要以管理員許可權執行。

需要注意的是:如果在vs中 啟動除錯 的話,就會提示 此任務要求應用程式具有提公升的許可權。如下圖:

提公升許可權

選擇 使用其他憑據重新啟動 即可。

C 如何以管理員身份執行程式

在使用winform程式獲取呼叫cmd命令提示符時,如果是win7以上的作業系統,會需要必須以管理員身份執行才會執行成功,否則無效果或提示錯誤。比如在通過winform程式執行cmd命令時,某些情況下如果不是以管理員身份執行,則會提示命令無效。或者通過winform程式執行windows servi...

如何以管理員身份執行cmd

第一種方法 舉例 runas user administrator cmd c cmd.exe 執行上面的命令有兩個前提 1 設定了administrator的密碼 計算機 管理 本地使用者和組 administrator 設定密碼 2 沒有禁用administrator使用者 計算機 管理 本地使...

如何以管理員身份執行cmd

點選螢幕最左下角的 開始 按鈕,選擇 執行 命令 在彈出的 執行 對話方塊中輸入 cmd 命令,再單擊 確定 按鈕 正常開啟了dos命令提示符視窗了。但是是 user 許可權下 有時,執行 對話方塊中可能不能通過 cmd 命令開啟dos彈出視窗,此時我們可以單擊 開始 按鈕,再選擇 所有程式 選擇 ...