Параметры политики консоли диспетчера пакетов NuGet (PMC)

В VS2013, когда я пытаюсь открыть консоль диспетчера пакетов NuGet, я внезапно получаю ошибку:

Windows PowerShell успешно обновил политику выполнения, но параметр переопределяется политикой, определенной в более конкретной области.
Из-за переопределения ваша оболочка сохранит текущее эффективное выполнение политика неограниченная. Введите "Get-ExecutionPolicy-List" для просмотра параметры политики выполнения. За дополнительной информацией см. раздел "Get-Help Set- Параметра ExecutionPolicy".

Если я запускаю "Get-ExecutionPolicy-List" в командной строке PowerShell, я получаю следующее:

Scope                 ExecutionPolicy
-----                 ---------------
MachinePolicy         Unrestricted
UserPolicy            Unrestricted
Process               Unrestricted
CurrentUser           RemoteSigned
LocalMachine          Undefined

не уверен, что это правильно или нет, но на моем рабочем ПК политики установлены на:

Scope                 ExecutionPolicy
-----                 ---------------
MachinePolicy         Unrestricted
UserPolicy            Undefined
Process               Unrestricted
CurrentUser           RemoteSigned
LocalMachine          Undefined

думаю, проблема в UserPolicy поэтому я попытался выполнить следующую команду:

Set-ExecutionPolicy Undefined -Scope UserPolicy

что дает мне сообщение об ошибке:

Набор-Параметра ExecutionPolicy : Невозможно задать политику выполнения. Политики выполнения в областях MachinePolicy или UserPolicy должны быть установить с помощью групповой политики.

не совсем уверен, что делать сейчас. Любая помощь в устранении этой проблемы была бы весьма признательна.

5 ответов


это происходит на рабочей станции, которая присоединена к домену, и где групповая политика домена включает определенный параметр PowerShell ExecutionPolicy.

на данный момент см. параметры, приведенные здесь: https://powershellpanda.wordpress.com/2013/12/01/override-gpo-for-powershell-execution-policy/

лично я использую временное решение. Временное удаление политики выполнения, которая была удалена из моего домена. (Он вернется конечно, но, по крайней мере, я могу продолжать работать, пока не будет найдено более постоянное решение.) Вот скрипт regedit, который я использую:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PowerShell]
"ExecutionPolicy"=-

см. также:https://github.com/NuGet/Home/issues/974#issuecomment-123410075

обновление

Я думаю, что это только начало быть проблемой с Visual Studio 2013 обновление 5, опубликованном вчера. Кстати, это влияет и на Visual Studio 2015 (RTM).

обновление 2

теперь доступно правильное исправление nuget (для VS2013 и VS2015), в этом сообщении:https://github.com/NuGet/Home/issues/974#issuecomment-124774650


Это произошло и со мной, с политикой выполнения PowerShell для домена (неограниченной для MachinePolicy). Версия NuGet-2.8.60610.756. Версия Visual Studio-Visual Studio 2013 с обновлением 4 (12.0.31101.00; Community Edition). Симптом заключается в том, что консоль диспетчера пакетов доступна только для чтения с сообщением об ошибке, описанным в вопросе @smolesen, и приглашение не отображается.

с обходным путем, предоставленным @pbar, моя установка также отлично работает.


Это начало происходить в NuGet 3.0.0.0, который был выпущен с Visual Studio 2015 RTM. Возвращаясь к предыдущей версии NuGet избавится от проблемы.


это проблема с обновлением VS 2013 5. Обходной путь, который работает для меня, - выполнить эту команду в powershell и перезапустить VS.

Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\PowerShell -Name ExecutionPolicy -Value ByPass

Я установил исправление для обновления инструментов Nuget, и оно сработало.

https://github.com/NuGet/Home/releases/download/2.8.7/NuGet.Tools.vsix


Я пробовал все идеи, описанные выше, ни одна из них не работала.

Что сработало для меня, так это то, что у меня был недопустимый символ в моем имени каталога

исходное имя каталога - - - > Entity Framework 4.1-Поваренная книга эксперта

новое имя каталога - - - > Entity Framework 4.1 эксперты Поваренная книга

когда я удалил символ " - "и символ "'" из имени каталога, проблема исчезла

проблема с символ Апострофа.