PowerShell InitializeDefaultDrive
В моем настраиваемом поставщике PowerShell я хочу, чтобы пользователь мог пропустить внутренний вызов InitializeDefaultDrives.
Метод InitializeDefaultDrives вызывается при запуске провайдера. Я предполагаю, что это когда я использую командлет Add-SnapIn для загрузки моего провайдера. Похоже, я ищу способ добавления динамических параметров в командлет Add-SnapIn.
Я знаю, что могу просто пропустить реализацию InitializeDefaultDrives и заставить пользователя использовать new-PsDrive, чтобы добавить диск вручную, если это необходимо. Это не хочу, я хочу. Я хочу всегда создавать диск по умолчанию, за исключением случая, когда пользователь хочет пропустить это.
Спасибо!
1 ответ
Динамические параметры AFAIK работают только тогда, когда вы управляете исходным кодом, т.е. в своем коде вы можете выбрать предоставление динамического параметра на основе значения другого параметра (например, пути). Затем ваш код делает что-то другое в зависимости от значения динамического параметра. Однако вы должны быть в состоянии выполнить то, что вы хотите, с помощью переменной предпочтения сеанса.
$SuppressDriveInit = $true
Add-PSSnapin Acme
Если переменная не определена или имеет значение false, продолжайте и инициализируйте привод. Это низкотехнологичный, но должен работать нормально.