Add-PSSnapin

将一个或多个 Windows PowerShell 管理单元添加到当前会话。

语法

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

说明

Add-PSSnapin cmdlet 将已注册的 Windows PowerShell 管理单元添加到当前会话。添加管理单元后,可以在当前会话中使用添加的管理单元所支持的 cmdlet 和提供程序。

若要将管理单元添加到以后所有的 Windows PowerShell 会话中,请在 Windows PowerShell 配置文件中添加 Add-PSSnapin 命令。有关详细信息,请参阅 about_Profiles。

参数

-Name <string[]>

指定管理单元的名称。(这是 Name,而不是 AssemblyName 或 ModuleName。)

要查找系统中已注册的管理单元的名称,请键入:“get-pssnapin –registered”。

是否为必需?

true

位置?

1

默认值

是否接受管道输入?

true (ByPropertyName)

是否接受通配符?

false

-PassThru

返回表示每个已添加的管理单元的对象。默认情况下,此 cmdlet 将不产生任何输出。

是否为必需?

false

位置?

named

默认值

是否接受管道输入?

false

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

不能通过管道将对象传递给 Add-PSSnapin。

输出

“无”或 System.Management.Automation.PSSnapInInfo

如果使用 PassThru 参数,则 Add-PSSnapin 返回一个表示管理单元的 PSSnapInInfo 对象。否则,此 cmdlet 将不产生任何输出。

说明

有关 Windows PowerShell 中的管理单元的详细信息,请参阅 about_PSSnapins。有关如何创建 Windows PowerShell 管理单元的信息,请参阅 MSDN (Microsoft Developer Network) Library 中的“如何创建 Windows PowerShell 管理单元”,网址是 https://go.microsoft.com/fwlink/?LinkId=144762。

Add-PSSnapin 仅用于向当前的会话添加管理单元。要将管理单元添加到所有的 Windows PowerShell 会话中,请将它添加到 Windows PowerShell 配置文件中。有关详细信息,请参阅 about_Profiles。

可以添加已使用 Microsoft .NET Framework 安装实用工具进行注册的任何 Windows PowerShell 管理单元。有关详细信息,请参阅 MSDN Library 中的“如何注册 Cmdlet、提供程序和主机应用程序”,网址是 https://go.microsoft.com/fwlink/?LinkID=143619。

若要获取计算机上注册的管理单元列表,请键入“get-pssnapin -registered”。

添加管理单元之前,Add-PSSnapin 会检查该管理单元的版本,验证它是否与当前版本的 Windows PowerShell 兼容。如果管理单元未通过版本检查,则 Windows PowerShell 将报告错误。

示例 1

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

说明
-----------
此命令向当前的会话添加 Microsoft Exchange 和 Active Directory 管理单元。





示例 2

C:\PS>get-pssnapin -registered | add-pssnapin -passthru

说明
-----------
此命令向会话添加所有已注册的 Windows PowerShell 管理单元。它使用 Get-PSSnapin cmdlet(带 Registered 参数)来获取表示每个已注册管理单元的对象。管道运算符 (|) 将结果传递给 Add-PSSnapin,后者将这些结果添加到会话中。PassThru 参数返回表示每个已添加的管理单元的对象。





示例 3

C:\PS>get-pssnapin

说明
-----------
此示例演示了在系统中注册一个管理单元,然后将其添加到会话的过程。它使用了 ManagementFeatures,这是在名为 ManagementCmdlets.dll 的文件中实现的一个虚拟管理单元。

第一条命令获取已添加到当前会话的管理单元,其中包括随同 Windows PowerShell 安装的管理单元。在此示例中,不返回 ManagementFeatures。这表示 ManagementFeatures 尚未添加到会话中。

    get-pssnapin


第二条命令获取已在系统中注册的管理单元,其中包括已添加到会话的那些管理单元。随同 Windows PowerShell 一起安装的管理单元不包括在内。

    get-pssnapin -registered

 
在本例中,该命令不返回任何管理单元。这表示 ManagementFeatures 管理单元尚未在系统上注册。

第三条命令为 .NET Framework 中 InstallUtil 工具的路径创建一个别名“installutil”。

    set-alias installutil $env:windir\Microsoft.NET\Framework\v2.0.50727\installutil.exe


第四条命令使用 InstallUtil 工具来注册管理单元。该命令指定了 ManagementCmdlets.dll 的路径、文件名或管理单元的“模块名称”。

    installutil C:\Dev\Management\ManagementCmdlets.dll


第五条命令与第二条命令相同。这次,使用该命令来验证是否已注册 ManagementCmdlets 管理单元。

    get-pssnapin -registered

第六条命令使用 Add-PSSnapin cmdlet 将 ManagementFeatures 管理单元添加到会话。该命令指定了管理单元名称 ManagementFeatures,而不是文件名。

    add-pssnapin ManagementFeatures

为了验证是否已将管理单元添加到会话中,第七条命令使用 Get-Command cmdlet 的 Module 参数。该命令显示由管理单元或模块添加到会话中的项。

    get-command -module ManagementFeatures

也可以使用 Get-Command 返回的对象的 PSSnapin 属性来查找 cmdlet 源自的管理单元或模块。第八条命令使用点表示法来查找 Set-Alias 命令的 PSSnapin 属性的值。

    (get-command set-alias).pssnapin





另请参阅

概念

Get-PSSnapin
Remove-PSSnapin
about_Profiles