Можете ли вы заставить Visual Studio работать в качестве администратора в Windows 8?
В Windows 7 вы можете войти в настройки совместимости программ и проверить, чтобы всегда работать как администратор. Есть ли аналогичный вариант в Windows 8?
Я всегда отключил UAC на своих машинах и сделал то же самое после обновления Windows 8, или так я думал. Оказывается, нет опции off
, только выключение уведомлений.
Это означает, что ничего не запускается как администратор, несмотря на то, что он находится в группе "Администратор". Мне нужно закрыть и снова открыть консоль \Visual Studio, когда я пытаюсь отлаживать (приложить к процессу, а не F5), что очень расстраивает.
Это действительно раздражает, что мне нужно либо задуматься о дополнительных шагах, чтобы открыть его как администратор, либо сообщить ему закрыть и снова открыть, когда я впервые отправлю сообщение об ошибке.
Ответы
Ответ 1
В Windows 8 & 10, вы должны щелкнуть правой кнопкой мыши devenv.exe
и выбрать "Устранение неполадок совместимости".
- Выберите "Устранение неполадок программы"
- Установите флажок "Для программы требуются дополнительные разрешения"
- Нажмите "Далее"
- Нажмите "Проверить программу..."
- Подождите, пока программа запустится
- Нажмите "Далее"
- Выберите "Да, сохранить эти настройки для этой программы"
- Нажмите "Закрыть"
Если при открытии Visual Studio он просит сохранить изменения в devenv.sln, просмотрите этот ответ, чтобы отключить его:
Отключить диалоговое окно сохранения решения Visual Studio devenv
Если вы передумали и хотите отменить параметр совместимости "Запуск от имени администратора", см. ответ здесь: Как исправить нераспознанный формат Guid в Visual Studio 2015
Ответ 2
После просмотра суперпользователя я нашел этот вопрос, в котором объясняется, как это сделать с помощью ярлыка на стартовом экране. Аналогичным образом вы можете сделать то же самое, когда Visual Studio привязана к панели задач. В любом месте:
- Щелкните правой кнопкой мыши значок Visual Studio
- Перейдите к
Properties
- В
Shortcut tab
выберите Advanced
- Проверьте
Run as administrator
В отличие от Windows 7 это работает только при запуске приложения из ярлыка, который вы изменили. После обновления обеих ярлыков Visual Studio это также работает, когда вы открываете файл решения из Explorer.
Обновить предупреждение:
Похоже, что одним из основных недостатков в работе Visual Studio с повышенными правами является то, что Explorer не работает с ними, а также вы не можете перетаскивать файлы в Visual Studio для редактирования. Вам нужно открыть их через диалог открытия файла. Вы также не можете дважды щелкнуть любой файл, связанный с Visual Studio, и открыть его в Visual Studio (за исключением решений), потому что вы получите сообщение об ошибке There was a problem sending the command to the program.
Как только я сниму, чтобы всегда начинать с повышенных разрешений (используя VSCommands) то я могу открывать файлы напрямую и переносить их в открытый экземпляр Visual Studio.
Обновление для The Daring:
Несмотря на отсутствие пользовательского интерфейса, чтобы отключить UAC, как в прошлом, что я видел по крайней мере, вы все равно можете сделать это через реестр. Ключ для редактирования:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
EnableLUA - DWORD 1-Enabled, 0-Disabled
После изменения этой Windows будет предложено перезапустить. После перезапуска вы вернетесь ко всему, что работает с правами администратора, если вы администратор. Проблемы, о которых я сообщал выше, теперь также исчезли.
Ответ 3
ПРИМЕЧАНИЕ в последних версиях VS (2015+) кажется, что это расширение больше не существует/имеет эту функцию.
Вы также можете скачать VSCommands для VS2012 от Squared Infinity, в которой есть функция, позволяющая изменить его на запуск от имени администратора (а также некоторые другие интересные элементы)
Обновление
Команды можно установить из строки меню Visual Studio, используя Tools
→ Extensions and Updates
, выбрав Online
и выполнив поиск vscommands
, где затем выбирается VSCommands for Visual Studio 20XX
в зависимости от того, используете ли вы 2012 или 2013 (или больше в будущем) и скачать и установить.
Ответ 4
- В меню "Пуск" Windows 8 выберите "Все приложения"
- Щелкните правой кнопкой мыши значок Visual Studio 2010
- Выберите "Открыть расположение файла"
- Щелкните правой кнопкой мыши значок ярлыка Visual Studio 2010
- Нажмите кнопку "Дополнительно"
- Установите флажок "Запуск от имени администратора"
- Нажмите "ОК"
Ответ 5
Это копия моего ответа на аналогичную запись в SuperUser:
Вариант 1 - установите VSLauncher.exe и DevEnv.exe для запуска всегда как admin
Чтобы Visual Studio всегда запускалась как admin при открытии любого .sln файла:
- Перейдите к
C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe
.
- Щелкните правой кнопкой мыши по
VSLauncher.exe
и выберите Устранение неполадок.
- Выберите Программа устранения неполадок.
- Отключить Программа требует дополнительных разрешений и нажмите "Далее".
- Нажмите кнопку Проверить программу..., чтобы запустить VS.
- Нажмите "Далее", затем нажмите "Да", сохраните эти настройки для этой программы, а затем закрыть.
Чтобы Visual Studio всегда запускалась как администратор , только сразу открывая визуальную студию, делайте то же самое с файлами DevEnv.exe. Эти файлы расположены по адресу:
Visual Studio 2010
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe
Visual Studio 2012
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe
Visual Studio 2013
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe
Visual Studio 2015
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe
Visual Studio 2017
C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS SKU]\Common7\IDE\devenv.exe
Вариант 2 - Используйте расширение VSCommands для Visual Studio
Установите бесплатное расширение VSCommands для Visual Studio (он находится в галерее расширений Visual Studio), а затем настройте его, чтобы всегда иметь Visual Studio с правами администратора, выбрав Инструменты → VSCommands → Параметры → Расширения IDE → Общие и отметьте Always start Visual Studio with elevated permissions
и нажмите кнопку "Сохранить".
Примечание. VSCommands в настоящее время недоступны для VS 2015, но на их сайте говорится, что они работают над обновлением для поддержки VS 2015.
Мое мнение
Я предпочитаю вариант 2, потому что:
- он также позволяет вам легко отключить эту функциональность.
- VSCommands поставляется с множеством других замечательных функций, поэтому я всегда их устанавливал в любом случае.
- это просто проще сделать, чем вариант 1.
Ответ 6
VSCommands не работал у меня и вызвал проблему, когда я установил Visual Studio 2010 в сторону Visual Studio 2012.
После некоторых экспериментов я нашел трюк:
Перейдите к HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
и добавьте запись с именем "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe"
и значением "RUNASADMIN"
.
Это должно решить вашу проблему. Я также в блоге об этом.
Ответ 7
Если вы используете Total Commander, как и я, вы должны сделать то же самое для Total Commander, который будет запускаться как admin всегда. Затем вы сможете открыть sql файл с двойным щелчком в одном экземпляре управления SQL Server или открыть любой файл Visual Studio с двойным щелчком и не открывать несколько экземпляров.
Эта программа для устранения неполадок добавляет значение реестра к HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers для любой программы, поэтому, если вы хотите написать ее напрямую, вы можете.
Ответ 8
Я знаю, что это немного поздно, но я просто понял, как это сделать, изменив (прочитав, "взломал" ) манифест файла devenv.exe. Я должен был приехать сюда первым, потому что заявленные решения кажутся немного проще и, вероятно, более поддерживаются Microsoft.:)
Вот как я это сделал:
- Создайте проект в VS, который называется "Exe Manifests". (Я думаю, что любая версия будет работать, но я использовал 2013 Pro. Кроме того, на самом деле не имеет значения, что вы назовете.)
- "Добавить существующий элемент" в проект, перейдите на Visual Studio exe и нажмите "ОК". В моем случае это были "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe".
- Дважды щелкните файл "devenv.exe", который теперь должен быть указан как файл в вашем проекте. Он должен вызвать exe в редакторе ресурсов.
- Разверните "RT_MANIFEST" node, затем дважды щелкните по "1" под этим. Это откроет исполняемый манифест в двоичном редакторе.
- Найдите требуемый тегExecutionLevel и замените "asInvoker" на "requireAdministrator". A la:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
- Сохраните файл.
Вы только что сохранили копию исполняемого файла, который был добавлен в ваш проект. Теперь вам нужно создать резервную копию оригинала и скопировать измененный exe в каталог установки.
Как я уже сказал, это, вероятно, не самый правильный способ сделать это, но, похоже, он работает. Если кто-нибудь знает о каких-либо негативных последствиях или необходимых запястье, которые должны произойти, пожалуйста, звоните!
Ответ 9
Я нашел простой способ сделать это в EightForums (Вариант 8), создать строковое значение в HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Установите имя для пути к программе и значение ~ RUNASDMIN.
В следующий раз, когда вы откроете программу, она откроется как администратор.
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\IDE\\devenv.exe"="~RUNASADMIN"
Ответ 10
Просто найдите программу в каталоге Program Files (или в другом месте). Щелкните правой кнопкой мыши на EXE файле, а на второй вкладке внизу установите флажок для принудительного запуска этой программы с правами администратора.
Теперь все ярлыки файла exe будут запущены с правами администратора:)
Ответ 11
Щелкните правой кнопкой мыши на visual studio и выберите запустите как администратор каждый раз, когда вы намереваетесь его открыть.
Кроме того, вы можете проверить устранение неполадок совместимости
- Щелкните правой кнопкой мыши на Visual Studio > Выберите "Устранение неполадок совместимости".
- Выберите программу устранения неполадок.
- Проверить Для выполнения требуются дополнительные разрешения.
- Нажмите "Проверить программу".
- Подождите некоторое время до запуска программы. Нажмите "Далее".
- Выберите "Да", сохраните эти настройки для этой программы.
- Подождите, пока проблема будет решена.
- Убедитесь, что окончательный статус зафиксирован. Нажмите "Закрыть".
Проверьте шаги детализации ссылка.
Ответ 12
Visual Studio делает автоматическое повышение автоматически, если манифест приложения проекта указывает административный requestedExecutionLevel
, поэтому вам просто нужно его отредактировать. Visual Studio обнаружит это и перезапустит себя как администратор при необходимости.