1

Режим ограниченного языка включен в Powershell по умолчанию? в последней сборке Windows 10 FCU, обновленной

2 ответа2

3

Нет, вы можете перевести сеанс PowerShell в режим ограниченного языка, просто установив свойство:

PS C:\> $ExecutionContext.SessionState.LanguageMode
FullLanguage

PS C:\> $ExecutionContext.SessionState.LanguageMode = "ConstrainedLanguage"

PS C:\> $ExecutionContext.SessionState.LanguageMode
ConstrainedLanguage


PS C:\> [System.Console]::WriteLine("Hello")

Cannot invoke method. Method invocation is supported only on core types in this language mode.
At line:1 char:1
+ [System.Console]::WriteLine("Hello")
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : MethodInvocationNotSupportedInConstrainedLanguage

Для получения более подробной информации прочитайте этот официальный документ: что такое PowerShell Constrained Language? https://blogs.msdn.microsoft.com/powershell/2017/11/02/powershell-constrained-language-mode/

1

Вы также можете контролировать это через переменную __PSLockdownPolicy env. Значение 0 приведет к FullLanguage, а значение 4 сместит его в ConstrainedLanguage.

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