Развертывание модуля PowerShell - PullRequest
0 голосов
/ 11 ноября 2018

Я не знаю, в каком месте профиля мои пользователи собираются развернуть мой модуль. Как определить путь RootModule в манифесте?

Например, один пользователь может развернуть модуль в папке профиля PS под System32 (все пользователи), а другой может развернуть его в папке профиля PS под своим профилем пользователя Windows (текущий пользователь).

Это означает, что файл .psd1 необходимо будет редактировать вручную после того, как пользователь развернет мой модуль. Есть ли способ обойти эту проблему (кроме написания скомпилированного установщика)?

1 Ответ

0 голосов
/ 11 ноября 2018

В файле манифеста нет пути RootModule. Только RootModule, для которого задано имя вашего модуля psm1.

Microsoft

Модуль скрипта или файл двоичного модуля, связанный с этим манифестом. Предыдущие версии PowerShell называли этот элемент ModuleToProcess.

Возможные типы для корневого модуля могут быть пустыми (что делает этот модуль манифестом), именем модуля скрипта (.psm1, который делает его модулем скрипта) или именем двоичного модуля (.exe). или .dll, что делает это двоичным модулем). Размещение имени манифеста модуля (.psd1) или файла сценария (.ps1) в этом элементе приведет к возникновению ошибки.

Исходя из того, что вы описали, кажется, что вам нужен абсолютный путь в вашем модуле. Если это так, используйте $PSScriptRoot в вашем модуле. Проверьте эту ссылку .

Надеюсь, это поможет.

...