Редактор скриптов PowerGUI не распознает обновленную версию PowerShell?
У меня ARS Shell 1.7.0 установлена как часть ARS 6.9, и моя версия PowerShell для MS (Windows) - 4 (получена из $PSVersionTable.PSVersion, скриншот ниже)
Однако когда я делаю то же самое в PowerGUI, я получаю версию как 2? Это началось после того, как я обновил версию оболочки до 1.7 с 1.6.9 (PowerGUI отлично работал с 1.6.9). Я понятия не имею, почему это происходит, и из-за этого я не могу использовать квестовые командлеты в редакторе PowerGUI, которые делают отладку моих сценариев невыполнимой задачей!
Скриншот из PowerGUI:
Я получаю ошибку ниже, когда я пытаюсь загрузить ActiveRolesManagementShell из PowerGUI:
ОБНОВЛЕНИЕ: попытался запустить Powershell (x86), но результат все тот же, может кто-нибудь сообщить мне, где в мире PowerGUI собирает версию 2?
2 ответа
Обновлен редактор скриптов PowerGUI до версии 3.8, и это решило проблему. PowerGUI теперь распознает v4
Люди, использующие версию 3.2, должны сделать это.
Я думаю, что проблема могла быть из-за изменения в ARS 1.7.0, которое вынуждает потребовать двигатель PS2, согласно этому:
Windows PowerShell 4.0 и Windows PowerShell 3.0 имеют обратную совместимость с Windows PowerShell 2.0. Командлеты, поставщики, оснастки, модули и сценарии, написанные для Windows PowerShell 2.0, работают без изменений в Windows PowerShell 4.0 и Windows PowerShell 3.0. Однако из-за изменения политики активации во время выполнения в Microsoft .NET Framework 4 хост-программы Windows PowerShell, написанные для Windows PowerShell 2.0 и скомпилированные с Common Language Runtime (CLR) 2.0, не могут работать без изменений в Windows PowerShell 3.0 или Windows PowerShell. 4.0, которые скомпилированы с CLR 4.0. Механизм Windows PowerShell 2.0 предназначен для использования только в том случае, если не удается запустить существующий сценарий или хост-программу, поскольку он несовместим с Windows PowerShell 4.0, Windows PowerShell 3.0 или Microsoft .NET Framework 4. Ожидается, что такие случаи будут редкими.
Многие программы, для которых требуется Windows PowerShell 2.0 Engine, запускают его автоматически. Эти инструкции включены для тех редких ситуаций, когда вам нужно запустить двигатель вручную.