2009-11-02 101 views
0

在我的自定義PowerShell提供程序中,我希望用戶能夠跳過對InitializeDefaultDrives的內部調用。PowerShell InitializeDefaultDrive

當提供程序啓動時會調用InitializeDefaultDrives方法。我想這是當我使用Add-SnapIn cmdlet加載我的提供程序。所以看起來我正在尋找一種方法將動態參數添加到Add-SnapIn cmdlet。

我知道我可以跳過InitializeDefaultDrives的實現,並讓用戶使用new-PsDrive手動添加驅動器(如果需要)。這不是我想要的。我希望始終創建一個默認驅動器,除非用戶想要跳過此操作。

謝謝!

回答

1

AFAIK動態參數僅在您控制源代碼時起作用,即在代碼中您可以選擇根據另一個參數(如路徑)的值公開動態參數。然後你的代碼根據動態參數的值做一些不同的事情。但是,您應該能夠通過會話首選項變量完成您想要的操作。

$SuppressDriveInit = $true 
Add-PSSnapin Acme 

如果變量未定義或設置爲false,則繼續並初始化驅動器。這是低科技,但應該工作得很好。