Add-PSSnapin

將一或多個 Windows PowerShell 嵌入式管理單元新增至目前的會話。

Syntax

Add-PSSnapin
   [-Name] <String[]>
   [-PassThru]
   [<CommonParameters>]

Description

Cmdlet 會將 Add-PSSnapin 已註冊的 Windows PowerShell 嵌入式管理單元新增至目前的會話。 新增嵌入式管理單元之後,您可以使用目前會話中嵌入式管理單元支援的 Cmdlet 和提供者。

若要將嵌入式管理單元新增至所有未來的 Windows PowerShell 會話,請將命令新增 Add-PSSnapin 至您的 Windows PowerShell 配置檔。 如需詳細資訊,請參閱 about_Profiles

從 Windows PowerShell 3.0 開始,Windows PowerShell 中包含的核心命令會封裝在模組中。 例外狀況是 Microsoft.PowerShell.Core,這是嵌入式管理單元(PSSnapin)。 根據預設,只有 Microsoft.PowerShell.Core 嵌入式管理單元會新增至會話。 模組會在第一次使用時自動匯入,您可以使用 Import-Module Cmdlet 來匯入模組。

範例

範例 1:新增嵌入式管理單元

PS C:\> Add-PSSnapIn -Name Microsoft.Exchange, Microsoft.Windows.AD

此命令會將 Microsoft Exchange 和 Active Directory 嵌入式管理單元新增至目前的會話。

範例 2:新增所有已註冊的嵌入式管理單元

PS C:\> Get-PSSnapin -Registered | Add-PSSnapin -Passthru

此命令會將所有已註冊的 Windows PowerShell 嵌入式管理單元新增至會話。 它會使用 Get-PSSnapin Cmdlet 搭配 Registered 參數來取得代表每個已註冊嵌入式管理單元的物件。管線運算子 (|) 會將結果傳遞至 Add-PSSnapin,其會將結果新增至會話。 PassThru 參數會傳回代表每個新增嵌入式管理單元的物件。

範例 3:註冊嵌入式管理單元並加以新增

第一個命令會取得已新增至目前會話的嵌入式管理單元,其中包含隨 Windows PowerShell 一起安裝的嵌入式管理單元。 在此範例中,不會傳回ManagementFeatures。 這表示它尚未新增至會話。

第二個命令會取得已在系統上註冊的嵌入式管理單元,其中包含已新增至會話的嵌入式管理單元。 它不包含隨 Windows PowerShell 一起安裝的嵌入式管理單元。 在此情況下,命令不會傳回任何嵌入式管理單元。這表示系統尚未註冊 ManagementFeatures 嵌入式管理單元。

第三個命令會為 .NET Framework 中的 InstallUtil 工具路徑建立別名 installutil。

第四個命令會使用 InstallUtil 工具來註冊嵌入式管理單元。 命令會指定ManagementCmdlets.dll的路徑、嵌入式管理單元的檔名或模組名稱。

第五個命令與第二個命令相同。 這次,您會使用它來確認ManagementCmdlet嵌入式管理單元已註冊。

第六個命令會 Add-PSSnapin 使用 Cmdlet 將 ManagementFeatures 嵌入式管理單元新增至會話。 它會指定嵌入式管理單元 ManagementFeatures 的名稱,而不是檔名。

若要確認嵌入式管理單元已新增至會話,第七個命令會使用 Get-Command Cmdlet 的 Module 參數。 它會顯示嵌入式管理單元或模組新增至工作階段的專案。

您也可以使用 Cmdlet 傳回之 物件的 Get-Command PSSnapin 屬性,來尋找 Cmdlet 產生所在的嵌入式管理單元或模組。 第八個命令會使用點表示法來尋找 Set-Alias Cmdlet 的 PSSnapin 屬性值。

PS C:\> Get-PSSnapin
PS C:\> Get-PSSnapin -Registered
PS C:\> Set-Alias installutil $env:windir\Microsoft.NET\Framework\v2.0.50727\installutil.exe
PS C:\> installutil C:\Dev\Management\ManagementCmdlets.dll
PS C:\> Get-PSSnapin -Registered
PS C:\> add-pssnapin ManagementFeatures
PS C:\> Get-Command -Module ManagementFeatures
PS C:\> (Get-Command Set-Alias).pssnapin

此範例示範在系統上註冊嵌入式管理單元的程式,然後將它新增至您的會話。 它會使用ManagementFeatures,這是在名為 ManagementCmdlets.dll的檔案中實作的虛構嵌入式管理單元。

參數

-Name

指定嵌入式管理單元的名稱。 這是 Name,而不是 AssemblyName 或 ModuleName。 允許通配符。

若您在您的系統上尋找已註冊嵌入式管理單元的名稱,請輸入 Get-PSSnapin -Registered

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-PassThru

表示這個 Cmdlet 會傳回代表每個新增嵌入式管理單元的物件。 根據預設,此 Cmdlet 不會產生任何輸出。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

None

您無法使用管線將物件傳送至此 Cmdlet。

輸出

None or System.Management.Automation.PSSnapInInfo

如果您指定 PassThru 參數,此 Cmdlet 會傳回 PSSnapInInFo 物件,代表嵌入式管理單元。 否則,此 Cmdlet 不會產生任何輸出。

備註

Windows PowerShell 包含下列的 Add-PSSnapin別名:

  • asnp

從 Windows PowerShell 3.0 開始,隨 Windows PowerShell 一起安裝的核心命令會封裝在模組中。 在 Windows PowerShell 2.0 和在更新版本的 Windows PowerShell 中建立舊樣式會話的主機程式中,核心命令會封裝在嵌入式管理單元 (PSSnapins) 中。 例外狀況是 Microsoft.PowerShell.Core,一律是嵌入式管理單元。 此外,遠端會話,例如 New-PSSession Cmdlet 所啟動的工作階段,是包含核心嵌入式管理單元的舊式會話。

如需使用核心模組建立較新樣式會話的 CreateDefault2 方法相關信息,請參閱 CreateDefault2 方法

如需嵌入式管理單元的詳細資訊,請參閱 about_PSSnapins如何建立 Windows PowerShell 嵌入式管理單元

Add-PSSnapin 只會將嵌入式管理單元新增至目前的會話。 若要將嵌入式管理單元新增至所有 Windows PowerShell 工作階段,請將它新增至您的 Windows PowerShell 配置檔。 如需詳細資訊,請參閱 about_Profiles

您可以新增任何已使用 Microsoft .NET Framework 安裝公用程式註冊的嵌入式管理單元。 如需詳細資訊,請參閱 如何註冊 Cmdlet、提供者和主應用程式

若要取得電腦上註冊的嵌入式管理單元清單,請輸入 Get-PSSnapin -Registered

新增嵌入式管理單元之前, Add-PSSnapin 請先檢查嵌入式管理單元的版本,確認它是否與目前版本的 Windows PowerShell 相容。 如果嵌入式管理單元失敗版本檢查,Windows PowerShell 會回報錯誤。