簡體   English   中英

如何在 Visual Studio 調試中以管理員身份運行應用程序?

[英]How to run application as administrator in debug with Visual Studio?

我有 ac# 應用程序,我必須對 C 驅動器的根目錄進行讀/寫訪問。 我意識到我可以編譯代碼並以管理員身份運行可執行文件並且它可以工作。 但我需要調試它,我不確定如何在 Visual Studio 中啟動應用程序。

我試過添加:

<requestedExecutionLevel level="asInvoker" uiAccess="true" />

到我的清單,但我仍然收到拒絕訪問錯誤。

這是失敗的代碼行:

MemoryMappedFile mmf = MemoryMappedFile.CreateFromFile(@"c:\somemapnamefile.data", System.IO.FileMode.OpenOrCreate, "somemapname", 1000);

現在我有一個工作,但我想知道未來。

只需以管理員身份運行visual studio。 您從那里調試的任何程序也將以管理員身份運行。

VS 必須以管理員權限運行。 然而,更優雅的方式是在 manifest 中的 requiredExecutionLevel 應該設置為“requireAdministrator”。

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

當您打開項目並嘗試調試時,VS2012 會警告管理員權限並重新啟動為管理員權限。 而且 exe 文件將首先被標記為需要管理員權限,因此在部署時您不需要在文件屬性中配置管理員權限要求。

您還可以自動設置此管理員選項:

在此處輸入圖片說明

要回答標題中的問題,您只需在啟動 VS 時從上下文菜單中選擇以管理員身份運行即可。

現在檢查的答案將不起作用。

您應該在項目屬性Linker -> Manifest File -> UAC Execution Level 中找到一個選項。 將此設置為requireAdminstrator

這將導致生成的清單,包括您需要的requestedExecutionlevel默認的,所以你的用戶將自動提示提升權限,如果他們不是已經升高。

由於當前用戶沒有足夠的權限打開 Visual Studio,因此出現“此任務要求應用程序具有提升的權限”錯誤。

作為臨時解決方案

您可以通過右鍵單擊 Visual Studio 並在每次打算打開它時選擇以管理員身份運行來解決此問題

作為永久解決方案

您可以檢查兼容性故障排除

  • 右鍵,單擊 Visual Studio > 選擇兼容性疑難解答。
  • 選擇疑難解答程序。
  • 檢查程序需要額外的權限。
  • 單擊測試程序。
  • 稍等片刻,直到程序啟動。 單擊下一步。
  • 選擇是,為此程序保存這些設置。

有關圖像的詳細步驟,請檢查Visual Studio 要求應用程序具有提升的權限

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM