Vous êtes sur la page 1sur 2

TEMA

about_Functions_CmdletBindingAttribute

DESCRIPCIÓN BREVE
Describe un atributo que declara una función que funciona de
manera parecida a un cmdlet compilado.

DESCRIPCIÓN DETALLADA
Al escribir funciones, se puede agregar el atributo CmdletBinding
para que Windows PowerShell enlace los parámetros de la función
del mismo modo que enlaza los parámetros de los cmdlets
compilados. Cuando se declara este atributo, Windows PowerShell
también establece la variable automática $PSCmdlet.

Cuando se utiliza el enlace de cmdlets, los parámetros


desconocidos y los argumentos posicionales que no tienen parámetros
posicionales equivalentes producen un error en el enlace. Además, una
función o script con enlace de cmdlets no utiliza la variable $args.

Nota: los cmdlets compilados utilizan el atributo Cmdlet


obligatorio, que es parecido al atributo CmdletBinding que se
describe en este tema.

En el ejemplo siguiente se muestra el esquema de una función que


especifica todos los argumentos opcionales del atributo CmdletBinding.
Después del ejemplo se proporciona una descripción breve de cada
argumento.

{
[CmdletBinding(SupportsShouldProcess=<Boolean>,
ConfirmImpact=<String>,
DefaultParameterSetName=<String>)]

Param ($Parameter1)
Begin{}
Process{}
End{}
}

SupportsShouldProcess

Cuando el argumento SupportsShouldProcess se establece en true,


indica que la función admite las llamadas al método
ShouldProcess, que se utiliza para solicitar datos al usuario
antes de que la función realice un cambio en el sistema. Cuando se
especifica este argumento, los parámetros Confirm y WhatIf se
habilitan para la función.

Para obtener más información sobre las solicitudes de


confirmación, vea "Requesting Confirmation" en MSDN Library, en
http://go.microsoft.com/fwlink/?LinkId=136658.

DefaultParameterSetName
El argumento DefaultParameterSetName especifica el nombre del
conjunto de parámetros que Windows PowerShell intentará
utilizar cuando no puede determinar qué conjunto de parámetros debe
utilizar. Se puede evitar este problema haciendo obligatorio el
parámetro único de cada conjunto de parámetros.

ConfirmImpact

El argumento ConfirmImpact especifica cuándo la acción de la


función se debe confirmar mediante una llamada al método
ShouldProcess. La llamada al método ShouldProcess muestra un
mensaje de confirmación solamente cuando el argumento
ConfirmImpact es mayor o igual que el valor de la variable de
preferencias $ConfirmPreference. (El valor predeterminado del
argumento es Medium.) Este argumento únicamente debe
especificarse si se especifica también el argumento
SupportsShouldProcess.

VEA TAMBIÉN
about_Functions_Advanced
about_Functions_CmdletBindingAttribute
about_Functions_ParameterAttributes