37

Всякий раз, когда я запускаю Visual Studio 2012 в Windows 8, ему всегда требуются права администратора для доступа к метаданным IIS и отладки локальных веб-приложений в IIS.

Если я отключу UAC, я не смогу запустить симулятор Windows 8!

Кто-нибудь знает, как я могу заставить его остановиться со всей этой чепухой о безопасности и просто позволить мне продолжить свою работу?

8 ответов8

51

Единственный способ, которым я знаю, который гарантирует, что он всегда будет открываться от имени администратора (в том числе при открытии из ассоциаций файлов, списка переходов и т.д.):

  1. Найдите файл devenv.exe в проводнике, например, мой находится в C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\

  2. Щелкните правой кнопкой мыши файл devenv.exe и выберите "Устранение неполадок совместимости".

  3. Выберите "Устранение неполадок программы"

  4. Выберите "Эта программа требует дополнительных разрешений"

Вам нужно будет позволить ему запустить VS, прежде чем он позволит вам нажать Next, но тогда все готово.

ЧРЕЗВЫЧАЙНО раздражает, что вы не можете просто сделать это через обычный диалог свойств. Как будто Microsoft старается изо всех сил обеспечить, чтобы Windows 8 отчуждала как можно больше людей ...

28
  1. Щелкните правой кнопкой мыши значок "Метро" для Visual Studio 2012

  2. Нажмите "Открыть местоположение файла". Это поместит вас в классический рабочий стол Windows с ярлыком для Visual Studio.

  3. Щелкните правой кнопкой мыши по этому ярлыку и перейдите в "Свойства"

  4. Нажмите "Дополнительно"

  5. Установите флажок "Запуск от имени администратора" и нажмите "ОК".

Отныне он всегда будет запускаться от имени администратора с повышенными привилегиями.

Вам нужно будет делать это для каждого ярлыка в Visual Studio.

Т.е., если вы также прикрепили Visual Studio к панели задач.

  1. Щелкните правой кнопкой мыши значок.

  2. Щелкните правой кнопкой мыши «Visual Studio 2012»

  3. Затем продолжите с шага 3 выше.

6

Если у меня возникла та же проблема, то предложенное товарищем по команде решение, которое сработало для меня, - это установить VSCommands для Visual Studio 2012, затем открыть конфигурацию VSCommands, установить IDE Enhancements - General - всегда запускать Visual Studio с повышенными разрешениями.

5

Я написал об этом в Stack Overflow, прежде чем нашел этот вопрос, а затем попробовал все, что предлагали другие ответы здесь. Я сразу начал сталкиваться с некоторыми проблемами.

При запуске VS2012 с повышенными разрешениями я больше не мог перетаскивать в него файлы из Проводника, что, как я полагаю, связано с тем, что Проводник не работает с повышенными разрешениями.

Затем, после того как я использовал VSCommands для постоянного запуска Visual Studio с повышенными разрешениями, я больше не мог открывать файлы, связанные с Visual Studio, кроме файлов решения, дважды щелкнув их в Проводнике. Visual Studio откроется, но я получу сообщение об ошибке, сообщающее, что There was a problem sending the command to the program. и они не откроются.

Это оставило мне необходимость использовать диалог открытия файла, если я хотел открыть любой файл, не относящийся к решению / проекту.

Несмотря на отсутствие пользовательского интерфейса для отключения UAC, как в прошлом, по крайней мере, я видел, что вы все равно можете сделать это через реестр. Ключ для редактирования:

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

После изменения этого Windows предложит перезагрузить компьютер. После перезапуска вы вернетесь ко всему, что работает с правами администратора, если вы являетесь администратором. Проблемы, о которых я говорил выше, теперь также исчезли.

4

Вариант 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 всегда запускалась с правами администратора при открытии 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

Вариант 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.
3

Для меня каждое решение имело несколько существенных недостатков. Единственный хороший способ, который я нашел - это взломать реестр. Возможно, вы захотите прочитать мой пост об этой проблеме (http://daniellang.net/always-run-visual-studio-as-administrator-in-windows-8/) или просто исправить ее напрямую:

Перейдите в HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers и добавьте запись с именем C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\VSLauncher.exe и значением RUNASADMIN . Это заставит VS запускаться от имени администратора.

1

На моей машине с Win8 с VS Express 2013 возникает проблема, когда я сохраняю свой проект в Мои документы. Я видел это на машинах Win7 с более старыми VS. Когда я создаю новый проект / перемещаю его в другое место (например, C:/ Programming /), он работает как надо!

0

Решение, о котором мне рассказал коллега, заключалось в создании задач планировщика заданий для каждого из ваших решений. Задача запускает Visual Studio с командной строкой, которая загружает ваш проект.

Вот значения, которые вы должны установить:

  • Дайте ему имя задачи, которое отражает открытый проект (вы будете использовать это позже)
  • Запуск с высшими привилегиями
  • Запускать только когда пользователь вошел в систему
  • Создать действие:
    • действие: запустить программу
    • программа / скрипт: «C:\Program Files (x86)\Microsoft Visual Studio [xx] .0\Common7\IDE\devenv.exe» (замените [xx] вашей версией VS)
    • Аргументы: / Проект "[полный путь к вашему решению] .sln"
  • условия:
    • Снять все пункты
  • Настройки:
    • Установите флажок Разрешить запуск задачи по требованию.
    • Снимите все остальные пункты
    • Правило запуска задачи: не запускать новый экземпляр (необязательно)

Хорошо, теперь вы можете проверить это, щелкнув правой кнопкой мыши по заданию и запустив его. Если это работает отлично, тогда создайте ярлык для задачи где-нибудь.

Щелкните правой кнопкой мыши, где вы хотите ярлык и выберите Создать ярлык. Вот командная строка для добавления в ярлык:

C:\Windows\System32\schtasks.exe /run /tn "[Имя задачи сверху]"

Теперь вы можете дважды щелкнуть по ярлыку, чтобы запустить ваше решение от имени администратора, не вызывая UAC.

Изменить: После того, как я написал выше, я нашел статью на tomssl.com, которая предоставляет более гибкое решение (не требует создания задачи для каждого решения). Первоначально это более сложный процесс настройки, но в конечном итоге его проще использовать.

Всегда запускайте Visual Studio от имени администратора без запроса UAC

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .