Это не проблема кода PowerShell. Это настройка среды.
Если вы делаете это на предприятии, значит, ваша организация установила политику на вашем компьютере по определенной причине.
Хотя то, что JPBlan c будет работать, если у вас нет возможности изменить этот параметр администраторами org на уровне компьютера, вы все равно не сможете его изменить. Вы можете изменить его для своего уровня пользователя или процесса. Есть несколько уровней для EP, и это хорошо задокументировано.
Set-ExecutionPolicy
Set-ExecutionPolicy
[-ExecutionPolicy] <ExecutionPolicy>
[[-Scope] <ExecutionPolicyScope>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser RemoteSigned
LocalMachine RemoteSigned
Нет практически никаких причин, чтобы когда-либо использовать неограниченное для повседневного использования PowerShell, особенно в уровень машины. Я всегда рекомендую CurrentUser или Process.
Итак, создайте новый ярлык Powershell для запуска, используя область CurrentUser или Proces, используя RemoteSigned (который является текущим значением по умолчанию в Windows 10 даже на уровне компьютера).
Даже при вызове этого кода используйте область действия CurrentUser или Process и RemoteSigned.