Add-PSSnapin
Agrega uno o varios complementos de Windows PowerShell a la sesión actual.
Sintaxis
Default (valor predeterminado)
Add-PSSnapin
[-Name] <String[]>
[-PassThru]
[<CommonParameters>]
Description
El cmdlet Add-PSSnapin agrega complementos registrados de Windows PowerShell a la sesión actual. Una vez agregados los complementos, puede usar los cmdlets y proveedores que admiten los complementos en la sesión actual.
Para agregar el complemento a todas las sesiones futuras de Windows PowerShell, agregue un comando Add-PSSnapin al perfil de Windows PowerShell. Para obtener más información, consulte about_Profiles.
A partir de Windows PowerShell 3.0, los comandos principales que se incluyen en Windows PowerShell se empaquetan en módulos. La excepción es Microsoft.PowerShell.Core, que es un complemento (PSSnapin). De forma predeterminada, solo se agrega el complemento Microsoft.PowerShell.Core a la sesión. Los módulos se importan automáticamente en el primer uso y puede usar el cmdlet Import-Module para importarlos.
Ejemplos
Ejemplo 1: Agregar complementos
PS C:\> Add-PSSnapIn -Name Microsoft.Exchange, Microsoft.Windows.AD
Este comando agrega los complementos de Microsoft Exchange y Active Directory a la sesión actual.
Ejemplo 2: Agregar todos los complementos registrados
PS C:\> Get-PSSnapin -Registered | Add-PSSnapin -Passthru
Este comando agrega todos los complementos registrados de Windows PowerShell a la sesión. Usa el cmdlet Get-PSSnapin con el parámetro Registered para obtener objetos que representan cada uno de los complementos registrados. El operador de canalización (|) pasa el resultado a Add-PSSnapin, que los agrega a la sesión. El parámetro PassThru devuelve objetos que representan cada uno de los complementos agregados.
Ejemplo 3: Registrar un complemento y agregarlo
The first command gets snap-ins that have been added to the current session that include the snap-ins that are installed with Windows PowerShell. In this example, ManagementFeatures is not returned. This indicates that it has not been added to the session.
PS C:\> Get-PSSnapin
The second command gets snap-ins that have been registered on your system, which includes those that have already been added to the session. It does not include the snap-ins that are installed with Windows PowerShell. In this case, the command does not return any snap-ins. This indicates that the ManagementFeatures snapin has not been registered on the system.
PS C:\> Get-PSSnapin -Registered
The third command creates an alias, installutil, for the path of the InstallUtil tool in .NET Framework.
PS C:\> Set-Alias installutil $env:windir\Microsoft.NET\Framework\v2.0.50727\installutil.exe
The fourth command uses the InstallUtil tool to register the snap-in. The command specifies the path of ManagementCmdlets.dll, the file name or module name of the snap-in.
PS C:\> installutil C:\Dev\Management\ManagementCmdlets.dll
The fifth command is the same as the second command. This time, you use it to verify that the ManagementCmdlets snap-in is registered.
PS C:\> Get-PSSnapin -Registered
The sixth command uses the **Add-PSSnapin** cmdlet to add the ManagementFeatures snap-in to the session. It specifies the name of the snap-in, ManagementFeatures, not the file name.
PS C:\> add-pssnapin ManagementFeatures
To verify that the snap-in is added to the session, the seventh command uses the *Module* parameter of the Get-Command cmdlet. It displays the items that were added to the session by a snap-in or module.
PS C:\> Get-Command -Module ManagementFeatures
You can also use the **PSSnapin** property of the object that the **Get-Command** cmdlet returns to find the snap-in or module in which a cmdlet originated. The eighth command uses dot notation to find the value of the PSSnapin property of the Set-Alias cmdlet.
PS C:\> (Get-Command Set-Alias).pssnapin
En este ejemplo se muestra el proceso de registrar un complemento en el sistema y, a continuación, agregarlo a la sesión. Usa ManagementFeatures, un complemento ficticio implementado en un archivo denominado ManagementCmdlets.dll.
Parámetros
-Name
Especifica el nombre del complemento. Este es el nombre, no assemblyName o ModuleName. Se permiten los caracteres comodín.
Para buscar los nombres de los complementos registrados en el sistema, escriba Get-PSSnapin -Registered.
Propiedades de parámetro
| Tipo: | String[] |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | 0 |
| Obligatorio: | True |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | True |
| Valor de los argumentos restantes: | False |
-PassThru
Indica que este cmdlet devuelve un objeto que representa cada complemento agregado. De forma predeterminada, este cmdlet no genera ninguna salida.
Propiedades de parámetro
| Tipo: | SwitchParameter |
| Valor predeterminado: | None |
| Admite caracteres comodín: | False |
| DontShow: | False |
Conjuntos de parámetros
(All)
| Posición: | Named |
| Obligatorio: | False |
| Valor de la canalización: | False |
| Valor de la canalización por nombre de propiedad: | False |
| Valor de los argumentos restantes: | False |
CommonParameters
Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.
Entradas
None
No se pueden canalizar objetos a este cmdlet.
Salidas
None or System.Management.Automation.PSSnapInInfo
Este cmdlet devuelve un objeto PSSnapInInfo que representa el complemento si especifica el parámetro PassThru. De lo contrario, este cmdlet no genera ninguna salida.
Notas
A partir de Windows PowerShell 3.0, los comandos principales que se instalan con Windows PowerShell se empaquetan en módulos. En Windows PowerShell 2.0 y en programas host que crean sesiones de estilo anterior en versiones posteriores de Windows PowerShell, los comandos principales se empaquetan en complementos (PSSnapins). La excepción es Microsoft.PowerShell.Core, que siempre es un complemento. Además, las sesiones remotas, como las iniciadas por el cmdlet New-PSSession, son sesiones de estilo anterior que incluyen complementos principales.
Para obtener información sobre el método CreateDefault2 que crea sesiones de estilo más reciente con módulos principales, vea método CreateDefault2 en MSDN Library.
Para obtener más información sobre los complementos, vea about_PSSnapins y Cómo crear un complemento de Windows PowerShell en MSDN Library.
add-PSSnapin agrega el complemento solo a la sesión actual. Para agregar el complemento a todas las sesiones de Windows PowerShell, agréguelo al perfil de Windows PowerShell. Para obtener más información, consulte about_Profiles.
Puede agregar cualquier complemento que se haya registrado mediante la utilidad de instalación de Microsoft .NET Framework. Para obtener más información, consulte Registro de cmdlets, proveedores y aplicaciones host en MSDN Library.
Para obtener una lista de complementos registrados en el equipo, escriba
Get-PSSnapin -Registered.Antes de agregar un complemento, Add-PSSnapin comprueba la versión del complemento para comprobar que es compatible con la versión actual de Windows PowerShell. Si el complemento produce un error en la comprobación de versiones, Windows PowerShell notifica un error.