visual-studio - 要求的作業需要提升的權限 - 系統管理員執行




您是否可以強制Visual Studio始終以Windows 8中的管理員身份運行? (8)

  1. 在Windows 8開始菜單中選擇所有應用程序
  2. 右鍵單擊Visual Studio 2010圖標
  3. 選擇打開文件位置
  4. 右鍵單擊Visual Studio 2010快捷方式圖標
  5. 點擊高級按鈕
  6. 選中以管理員身份運行複選框
  7. 點擊確定

在Windows 7中,您可以進入程序兼容性設置並簽出以始終以管理員身份運行。 Windows 8中有類似的選項嗎?

我一直在我的機器上禁用UAC,並且在Windows 8升級之後做了同樣的事情,所以我想。 事實證明,沒有off選項,只關閉通知。

這意味著即使管理員組中沒有任何管理員身份運行。 當我嘗試調試(附加到進程而不是F5 )時,我需要繼續關閉並重新打開我的控制台\ Visual Studio,這非常令人沮喪。

真的很煩人,我需要記住採取額外的步驟以管理員身份打開它,或者在我第一次進行調試時告訴它關閉並重新打開。


只需在Program Files目錄(或其他位置)找到該程序即可。 右鍵單擊EXE文件,在底部的第二個選項卡上,選中強制使用管理權限運行該程序的複選框。 從現在開始,exe文件的所有快捷方式都將以管理權限被解僱:)


在Windows 8和10中,您必須右鍵單擊devenv.exe並選擇“疑難解答兼容性”。

  1. 選擇“疑難解答程序”
  2. 選中“該程序需要額外的權限”
  3. 點擊下一步”
  4. 點擊“測試程序...”
  5. 等待程序啟動
  6. 點擊下一步”
  7. 選擇“是,保存這個程序的這些設置”
  8. 點擊“關閉”

如果在打開Visual Studio時它會要求保存對devenv.sln的更改,請參閱此答案以禁用它:

禁用Visual Studio devenv解決方案保存對話框


在查看超級用戶後,我發現了這個問題 ,它解釋瞭如何使用開始屏幕上的快捷方式執行此操作。 同樣,當Visual Studio被固定到任務欄時,您也可以做同樣的事情。 在任一位置:

  1. 右鍵單擊Visual Studio圖標
  2. 轉到Properties
  3. Shortcut tab選擇Advanced
  4. Run as administrator

與Windows 7中不同的是,只有當您從更改的快捷方式啟動應用程序時才有效。 更新這兩個Visual Studio快捷方式後,它似乎也可以在您從資源管理器打開解決方案文件時起作用。

更新警告:它看起來像使用提升的權限運行Visual Studio的主要缺陷之一是因為資源管理器沒有與它們一起運行,所以您不能將文件拖放到Visual Studio中進行編輯。 您需要通過文件打開對話框打開它們。 你也不能雙擊與Visual Studio關聯的任何文件,並在Visual Studio中打開它(除了看起來好像是解決方案之外),因為你會收到一條錯誤消息,說明There was a problem sending the command to the program. 一旦我取消選中總是以提升的權限開始(使用VSCommands),我就可以直接打開文件並將其放入Visual Studio的打開實例中。

大膽更新:儘管沒有像過去那樣關閉UAC的UI,但至少我看到,您仍然可以通過註冊表執行此操作。 編輯的關鍵是:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
EnableLUA - DWORD 1-Enabled, 0-Disabled

改變這個Windows後會提示你重新啟動。 重新啟動後,如果您是管理員,您將回到使用管理員權限運行的所有內容。 我上面報告的問題現在也消失了。


如果項目的應用程序清單指定了管理的requestedExecutionLevel ,Visual Studio會自動提升自己,因此您只需編輯它即可。 當需要時,Visual Studio會檢測到並以管理員身份重新啟動。


您還可以通過Squared Infinity下載VS2012的VSCommands ,該功能可以將其更改為以admin身份運行(以及其他一些很酷的零碎部件)

更新

可以使用Tools - > Extensions and Updates選擇Online並蒐索vscommands ,然後VSCommands for Visual Studio 20XX選擇VSCommands for Visual Studio 20XX具體取決於使用2012或2013(或更高版本),並下載並安裝。


我知道這有點晚了,但我只是想通過修改(讀取,“hacking”)devenv.exe文件的清單來做到這一點。 我應該先來這裡,因為所述的解決方案似乎更容易一些,並且可能會得到微軟的更多支持。 :)

以下是我的做法:

  1. 在VS中創建一個名為“Exe Manifests”的項目。 (我認為任何版本都可以使用,但我使用的是2013 Pro。同樣,它的名稱並不重要)。
  2. 將“添加現有項目”添加到項目中,瀏覽到Visual Studio exe,然後單擊“確定”。 在我的情況下,它是“C:\ Program Files文件(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe”。
  3. 雙擊現在應在項目中列為文件的“devenv.exe”文件。 它應該在資源編輯器中調出exe文件。
  4. 展開“RT_MANIFEST”節點,然後在其下雙擊“1”。 這將在二進制編輯器中打開可執行文件的清單。
  5. 找到requestedExecutionLevel標籤並將“asInvoker”替換為“requireAdministrator”。 A la: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
  6. 保存文件。

您剛剛保存了添加到項目中的可執行文件的副本。 現在您需要備份原始文件並將修改的 exe文件複製到您的安裝目錄。

正如我所說,這可能不是正確的做法,但它似乎工作。 如果有人知道需要發生的任何負面影響或必要的手腕拍打,請加入!


當我將Visual Studio 2010安裝在Visual Studio 2012之外時,VSCommands不適用於我,並導致出現問題。

經過一些實驗後,我發現了這個技巧:

轉到HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers並添加名為"C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe""C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe" ,並將值"RUNASADMIN"

這應該可以解決你的問題。 我也為此blogged





uac