При попытке запустить командлет из установленного на компьютере модуля PowerShell может появится ошибка:
The command XXX was found in the module, but the module YYY could not be loaded.
В моем случае эта ошибка появилась при попытке подключиться к тенанту Microsoft 365 с помощью модуля Exchange Online PowerShell .
Connect-ExchangeOnline : The 'Connect-ExchangeOnline' command was found in the module 'ExchangeOnlineManagement', but the module could not be loaded. For more information, run 'Import-Module ExchangeOnlineManagement'._x000D_ + CategoryInfo : ObjectNotFound: (Connect-ExchangeOnline:String) [], CommandNotFoundException_x000D_+ FullyQualifiedErrorId : CouldNotAutoloadMatchingModule_x000D_
Чаще всего эта ошибка означает, что у вас на компьютере запуск сторонних модулей ограничивается настройками PowerShell Execution Policy .
Выполните команду:
Get-ExecutionPolicy
В данном случае политика Restricted запрещает запуск сторонних скриптов.
Попробуйте загрузить модуль командой:
Import-Module ExchangeOnlineManagement
Должна появится ошибка:
Import-Module: File C:Program FilesWindowsPowerShellModulesExchangeOnlineManagement3.3.0netFrameworkExchangeOnlineManagement.psm1 cannot be loaded because running scripts is disabled on this system.
Можно разрешить запускать команды из внешних PowerShell модулей только в текущей сессии:
Set-ExecutionPolicy RemoteSigned -scope Process
Или можно запустить запуск любых локальных скриптов для текущего пользователя:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Если при попытке импортировать модуль появится ошибка вида:
Import-Module : Could not load file or assemblyor one of its dependencies. The system cannot find the file specified.
В этом случае скорее всего модуль загружен не полностью или поврежден. Удалите каталог с модулем с диска и переустановите модуль. PowerShell модули устаналиваются в одну из следующих директорий:
-
C:UsersYourUserNameDocumentsWindowsPowerShellModules
– в профиле текущего пользователя -
C:Program FilesWindowsPowerShellModules
– обычно сюда устаналиваются сторониие модулиЮ доступные для всех пользователей -
C:Windowssystem32WindowsPowerShellv1.0Modules
– встроенные в Windows модули
Еще один вариант ошибки импорта модуля:
import-module : File ……modulename.psm1 cannot be loaded. The file ……modulename.psm1 is not digitally signed. You cannot run this script on the current system_x000D_
Кроме исправления настроек политики запуска PowerShell скриптов причина такой ошибки может быть в том, что указанный файл модуля был вручную скачан с Интернета. В этом случае нужно просто разблокировать скачанный файл командой:
Unblock-File ……modulename.psm1