Почему поведение ExecutionPolicy различается в разных проектах в Visual Studio?

Я уже довольно давно использую NuGet на одном ПК. Теперь я создал новый проект в VS2010 (, это бета-проект MVC 4 с использованием шаблона одностраничного приложения, если это имеет значение ). Когда я выбираю

Инструменты/Диспетчер пакетов библиотек/Консоль диспетчера пакетов

Окно консоли открывается, но отображает ошибку:

Файл C :\Program Files (x86 )\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft Corporation\NuGet Package Manager\1.7.30402.9028\Modules\NuGet\profile.ps1 не может быть загружен потому что в этой системе отключено выполнение скриптов. Пожалуйста см. «получить -справку о _подписании» для получения более подробной информации.

Однако,другие проекты по-прежнему могут открываться и использовать консоль диспетчера пакетов.

В каждом случае VS2010 работает под одним и тем же пользователем.

Если я открою командную строку (, используя ту же учетную запись, под которой работает VS2010 ), запустите PowerShell и введите команду

Get -ExecutionPolicy

PowerShell возвращает

Restricted

Мое понимание, основанное на блоге Scott Hanselman , заключается в том, что сценарии вообще не должны запускаться, если ExecutionPolicy ограничена.

Почему существующие проекты могут использовать консоль диспетчера пакетов, а новый — нет?

Обновление :Изменение ExecutionPolicy на AllSigned и перезапуск VS2010 решает насущную проблему, но мой главный вопрос заключается в том, почему другие проекты смогли обойти установленную ExecutionPolicy. VS2010 , а не работает от имени администратора.

65
задан Derek Greer 23 September 2014 в 14:25
поделиться