1. ホーム
  2. powershell

[解決済み] Add-PSSnapinを呼び出す前にPowerShellスナップインが既にロードされているかどうかを確認する方法

2023-03-27 02:36:54

質問

PowerShell スクリプトのグループがあり、時には一緒に実行され、時には 1 つずつ実行されます。各スクリプトは、特定のスナップインがロードされることを必要とします。

現在、各スクリプトは Add-PSSnapin XYZ を呼び出しています。

これで、複数のスクリプトを連続して実行すると、後続のスクリプトが投げる。

Windows PowerShellスナップインXYZはすでに追加されているため、追加できません。スナップインの名前を確認し、もう一度実行してください。

Add-PSSnapinを呼び出す前に、各スクリプトにスナップインがすでにロードされているかどうかを確認させるにはどうすればよいですか。

どのように解決しますか。

このように、Snapin を照会し、見つからない場合はエラーにしないように PowerShell に指示することで、できるようになるはずです。

if ( (Get-PSSnapin -Name MySnapin -ErrorAction SilentlyContinue) -eq $null )
{
    Add-PsSnapin MySnapin
}