Чи можете ви змусити Visual Studio завжди працювати в якості адміністратора в Windows 8?


1013

У Windows 7 ви можете зайти в налаштування сумісності програм і відмовитися, щоб завжди працювати як адміністратор. Чи є подібний варіант в Windows 8?

Я завжди відключав UAC на своїх машинах і робив те ж саме після мого оновлення Windows 8, або так я думав. Виявляється, немає offможливості, лише вимкнення сповіщень.

Це означає, що нічого не працює як адміністратор, незважаючи на те, що він перебуває в групі адміністратора. Мені потрібно продовжувати закривати та повторно відкривати консолі \ Visual Studio, коли я намагаюся налагоджувати (додавати до процесу, ні F5), що дуже засмучує.

Це дійсно прикро, що мені потрібно або пам'ятати, щоб зробити додаткові кроки, щоб відкрити його як адміністратор, або сказати, щоб він закрився і знову відкривався, коли я вперше переходжу до налагодження.


6
Я думаю, що це питання дійсне тут, але я думаю, вам слід задати питання і про SuperUser - може бути загальна відповідь.
Преет Сангха

4
Якщо VS потрібно запустити як адміністратор, то ваші дозволи файлів неправильні. Їх легко зіпсувати з відключенням UAC.
KeatsPeeks

19
@Keats Адміністративні привілеї потрібні для запуску програми ASP.NET на IIS (оскільки вона намагатиметься автоматично створити віртуальний каталог тощо)
codemonkeh

4
@camelBase Я вважаю, що програми потрібно запускати як адміністратор лише за потреби. Зазвичай вони повинні працювати під нижчими привілеями. Ось що я роблю.
VivekDev

1
Вам справді не варто цього робити, тому що якщо ви працюєте з 2-ма проектами і потрібно лише один запуск адміністратора, не слід запускати інший екземпляр як адміністратор.
Phil1970

Відповіді:


2013

У Windows 8 та 10 вам потрібно клацнути правою кнопкою миші devenv.exeта вибрати "Усунення несправностей".

  1. Виберіть "Програма усунення несправностей"
  2. Поставте прапорець "Програма вимагає додаткових дозволів"
  3. Натисніть "Далі"
  4. Натисніть "Перевірити програму ..."
  5. Зачекайте запуску програми
  6. Натисніть "Далі"
  7. Виберіть "Так, збережіть ці налаштування для цієї програми"
  8. Натисніть "Закрити"

Якщо під час відкриття Visual Studio він запитує зберегти зміни в devenv.sln, перегляньте цю відповідь, щоб її відключити:

Відключити діалогове вікно збереження рішення для програми Visual Studio


Якщо ви передумали і хочете скасувати налаштування сумісності "Запустити як адміністратор", дивіться відповідь тут: Як виправити нерозпізнаний формат керівництва у Visual Studio 2015


40
Це найкраще рішення, з яким я зіткнувся. Тепер я можу знову відкрити .sln файли з Windows Explorer!
Макс Шиллінг

39
Крім того, він також вирішує закріплені рішення, які можуть працювати як адміністратор. Дякую.
Берн

183
Ви також можете зробити це у C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exeфайлі, якщо у вас встановлено кілька версій 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
смертоносна собака

61
Як повернути це назад до того, що було?
Роберт Коритник

96
@RobertKoritnik Це еквівалент додавання запису в реєстр з іменем C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exeта значенням RUNASADMINпід HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. Видалення запиту повертає налаштування назад.
Пьотр Шмід

168

Переглянувши Super User, я знайшов це питання, в якому пояснюється, як це зробити за допомогою ярлика на екрані запуску. Так само ви можете зробити те ж саме, коли Visual Studio закріплено на панелі завдань. У будь-якому місці:

  1. Клацніть правою кнопкою миші піктограму Visual Studio
  2. Йти до Properties
  3. Під Shortcut tabвиборомAdvanced
  4. Перевірити Run as administrator

встановлення операцій за замовчуванням в режимі адміністратора

На відміну від Windows 7, це працює лише в тому випадку, якщо ви запускаєте додаток із зміненого ярлика. Після оновлення обох ярликів Visual Studio, здається, він також спрацює, коли ви відкриєте файл рішення з Провідника.

Попередження про оновлення: Схоже, один з головних недоліків запуску Visual Studio з підвищеними дозволами, оскільки Explorer не працює з ними, а також ви не можете перетягувати файли в Visual Studio для редагування. Відкрити їх потрібно через діалогове вікно відкриття файлу. Не можна також двічі клацнути будь-який файл, пов’язаний із Visual Studio, і відкрити його в Visual Studio (окрім рішень, здається), оскільки ви отримаєте повідомлення про помилку, There was a problem sending the command to the program.щойно я знімаю прапорець, щоб завжди починати з підвищених дозволів (використовуючи VSCommands), тоді я ' Я можу відкривати файли безпосередньо та видаляти їх у відкритий екземпляр Visual Studio.

Оновлення для сміливих: Незважаючи на те, що не було інтерфейсу для вимкнення UAC, як у минулому, що я бачив принаймні, ви все одно можете це зробити через реєстр. Ключ для редагування:

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

Після зміни цієї системи Windows запропонує вам перезапустити. Після перезапуску ви повернетесь до всього, що працює з правами адміністратора, якщо ви адміністратор. Про проблеми, про які я повідомляв вище, зараз також немає.


9
Якщо вимкніть UAC, деякі програми метро, ​​наприклад SkyDrive, більше не працюватимуть.
krisdyson

1
Для Windows 8 відповідь, подана нижче TigerShark (правою кнопкою миші devenv.exe в Explorer, усунення несправностей ..) здається більш повноцінним рішенням.
Джеймс Вайт

3
@ClaraOnager Клацніть правою кнопкою миші на піктограмі на екрані запуску та виберіть «Відкрити розташування файлу». Це відкриє папку, в яку збережено ярлик, і ви зможете переглянути її властивості звідти.
Брайан Суровец

19
@Boomerangertanger О ні, не мої програми метро! </sarcasm>
Роберт Кріст,

2
Програми метро гойдаються. Кінець.
krisdyson

59

ПРИМІТКА в останніх версіях VS (2015+), схоже, це розширення більше не існує / має цю функцію.


Ви також можете завантажити VSCommands для VS2012 від Squared Infinity, який має функцію змінити його як адміністратор (а також деякі інші круті біти та фрагменти)

введіть тут опис зображення

Оновлення

Команди можна встановити з панелі меню Visual Studio, використовуючи Tools-> Extensions and Updatesвибір Onlineта пошук, vscommandsде потім вибирати, VSCommands for Visual Studio 20XXзалежно від того, використовуючи 2012 чи 2013 рік (або вище вперед) та завантажувати та встановлювати.


2
Я встановив це після оновлення дозволу на ярлик, тому я не впевнений, що це робить інакше. Права адміністратора, окрім цього плагіна, мають деякі приємні функції, які варто перевірити самостійно.
Брайан Суровец

3
Функція VSCommands також працює, коли ви запускаєте проект із меню швидкого доступу на панелі завдань. Блискучі речі!
Шон Кірон

@BrianSurowiec, що це робить, це щось вводить у запуск VS, так що якщо його не працює з адміністратором, він вбиває себе і запускає новий екземпляр з дозволу адміністратора
Не любив

@DaveInCaz сумно правда. Я думаю, що він перестав це робити. Я відредагував відповідь, щоб зазначити це.
Не любив

36
  1. У меню "Пуск" Windows 8 виберіть Усі програми
  2. Клацніть правою кнопкою миші на значок Visual Studio 2010
  3. Виберіть Відкрити розташування файлу
  4. Клацніть правою кнопкою миші на значку ярлика Visual Studio 2010
  5. Натисніть кнопку Додатково
  6. Установіть прапорець Запустити як адміністратор
  7. Натисніть кнопку ОК

2
Хороша відповідь, але буде працювати лише при запуску з піктограми, НЕ якщо ви клацніть правою кнопкою миші на піктограму та запускаєте прив’язані рішення. Пробували в Windows 8 і 10, і тільки метод усунення несправностей поки що працює для мене при запуску прив’язаних рішень.
djangojazz

23

Це копія моєї відповіді на аналогічну публікацію на SuperUser :

Варіант 1 - Встановіть VSLauncher.exe і DevEnv.exe, щоб вони завжди працювали як адміністратор

Щоб Visual Studio завжди запускався як адміністратор при відкритті будь-якого .sln-файлу :

  1. Перейдіть до C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe.
  2. Клацніть правою кнопкою миші VSLauncher.exeта виберіть Усунення несправностей .
  3. Виберіть програму Виправлення неполадок .
  4. Перевірте Програма вимагає додаткових дозволів і натисніть кнопку Далі.
  5. Натисніть кнопку Тестувати програму ..., щоб запустити VS.
  6. Клацніть Далі, потім натисніть кнопку Так, збережіть ці налаштування для цієї програми , а потім закрийте кнопку .

Щоб 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

Візуальна студія 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.

1
Windows 10 - щоразу, коли я відкриваю .sln файл VS 2015, запитує мене, чи хочу я зберегти зміни до devenv.exe
FrenkyB

1
@FrenkyB Ви виконали кроки, перелічені у варіанті 1 для VS 2015? Встановлення його як адміністратора повинно вирішити цю проблему. stackoverflow.com/a/14423461/602585
deadlydog

1
Це працює зараз. Я щойно врятував devenv.exe, і більше не скаржиться.
FrenkyB

15

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".

Це має вирішити вашу проблему. Я також про це блогував .


Чомусь це не спрацювало для мене, але додавання запису HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layersнатомість зробило трюк.
Пьотр Шмід

1
Чи не є ця відповідь функціонально ідентичною першим двом?
Maury Markowitz

7

Я знаю, що це трохи пізно, але я просто придумав, як це зробити, змінивши (прочитайте, "зламавши") маніфест файлу devenv.exe. Я мав би приїхати сюди першим, тому що заявлені рішення здаються трохи простішими, і, ймовірно, більше підтримуються Microsoft. :)

Ось як я це зробив:

  1. Створіть проект у VS під назвою "Exe Manifests". (Я думаю, що будь-яка версія буде працювати, але я використовував 2013 Pro. Крім того, не важливо, як ви її назвали.)
  2. "Додати існуючий елемент" до проекту, перейдіть до Exe Studio Visual і натисніть "Гаразд". У моєму випадку це було "C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe".
  3. Двічі клацніть на файлі "devenv.exe", який тепер повинен бути вказаний як файл у вашому проекті. Він повинен виводити exe в редактор ресурсів.
  4. Розгорніть вузол "RT_MANIFEST", а потім двічі клацніть на "1" під цим. Це відкриє маніфест виконуваного файлу в двійковому редакторі.
  5. Знайдіть запитуваний тегExecutionLevel та замініть "asInvoker" на "requAdministrator". А-ля: <requestedExecutionLevel level="requireAdministrator" uiAccess="false"></requestedExecutionLevel>
  6. Збережіть файл.

Ви щойно зберегли копію виконуваного файлу, яка була додана до вашого проекту. Тепер вам потрібно створити резервну копію оригіналу та скопіювати модифікований exe у вашу інсталяційну директорію.

Як я вже казав, це, мабуть, не правильний спосіб зробити це, але, здається, працює. Якщо хтось знає про якісь негативні випадання або необхідні плескання зап'ястя, які мають відбутися, будь ласка, задзвоніть!


Якщо це зробити, тоді запустити додаток як ЛЮСЕР стане неможливо, і нічого не можна дозволити запускати з адміністративними привілеями, якщо вони не потрібні з відомих, добрих причин (наприклад, автоматичне налаштування IIS)
EKW

6

Якщо ви використовуєте Total Commander як і я, ви повинні зробити те ж саме, щоб Total Commander запускався як адміністратор завжди. Тоді ви зможете відкрити файл sql подвійним клацанням у тому самому екземплярі управління SQL Server або відкрити будь-який файл Visual Studio подвійним клацанням і не відкривати кілька екземплярів.

Ця програма для усунення неполадок додає значення реєстру HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Шари для будь-якої програми, тому якщо ви хочете написати це безпосередньо, ви можете.


1
Це в основному додає нове значення рядка до цього реєстру, іменем є повний шлях до виконуваного файлу (без лапок), а дані - RUNASADMINу випадку, якщо ви хочете зробити це вручну.
Рей

6

Я знайшов простий спосіб зробити це на 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"

6

Також ви можете перевірити усунення несправностей із сумісністю

  • Клацніть правою кнопкою миші на Visual Studio> виберіть Усунення несправностей.
  • Виберіть Програма усунення несправностей.
  • Перевірте Програма вимагає додаткових дозволів.
  • Клацніть на Тестування програми.
  • Зачекайте хвилинку до запуску програми. Клацніть Далі.
  • Виберіть Так, збережіть ці налаштування для цієї програми.
  • Дочекайтеся вирішення проблеми.
  • Переконайтеся, що кінцевий статус зафіксовано. Клацніть Закрити.

Перевірте детальні кроки та інші способи завжди відкривати VS як Admin в Visual Studio, вимагає, щоб програма мала підвищені дозволи .


5

Просто знайдіть програму в каталозі програмних файлів (або в іншому місці). Клацніть правою кнопкою миші на файл EXE, на другій вкладці внизу встановіть прапорець, щоб змусити запускати цю програму з правами адміністрування. Відтепер усі ярлики файлу EXE будуть видалені з правами адміністратора :)


1
Це працює у всіх системах, де у вікні «Властивості» є вкладка «Сумісність», якої немає у Windows 8 (хоча Windows 8.1).
ThePyroEagle

2

Visual Studio автоматично піднімається автоматично, якщо маніфест програми проекту вказує адміністративний requestedExecutionLevel, тому вам просто потрібно це відредагувати. Visual Studio виявить це і при необхідності відновить себе як адміністратор.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.