Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los proveedores definen su funcionalidad básica cambiando el modo en que los cmdlets del proveedor, proporcionados por PowerShell, realizan sus acciones. Por ejemplo, los proveedores pueden usar la funcionalidad predeterminada del cmdlet o pueden cambiar cómo funciona ese cmdlet al recuperar elementos Get-Item del almacén de datos. La funcionalidad del proveedor descrita en este documento incluye la funcionalidad definida por la sobrescritura de métodos de interfaces y clases base de proveedor específicas.
Nota
Para ver las características de proveedor predefinidas por PowerShell, consulte Funcionalidades del proveedor.
Proveedores habilitados para unidades
Los proveedores habilitados para unidades especifican las unidades predeterminadas disponibles para el usuario y permiten al usuario agregar o quitar unidades. En la mayoría de los casos, los proveedores son proveedores habilitados para unidades porque requieren alguna unidad predeterminada para acceder al almacén de datos. Sin embargo, al escribir su propio proveedor, es posible que desee o no permitir que el usuario cree y quite unidades.
Para crear un proveedor habilitado para unidad, la clase de proveedor debe derivar de la clase System.Management.Automation.Provider.DriveCmdletProvider u otra clase que se derive de esa clase. La clase DriveCmdletProvider define los métodos siguientes para implementar las unidades predeterminadas del proveedor y admitir los New-PSDrive Remove-PSDrive cmdlets y . En la mayoría de los casos, para admitir un cmdlet de proveedor, debe sobrescribir el método al que llama el motor de PowerShell para invocar el cmdlet, como el método del cmdlet y, opcionalmente, puede sobrescribir un segundo método, como , para agregar parámetros dinámicos al NewDrive New-PSDrive NewDriveDynamicParameters cmdlet.
El método InitializeDefaultDrives define las unidades predeterminadas que están disponibles para el usuario cada vez que se usa el proveedor.
Los métodos NewDrive y NewDriveDynamicParameters definen cómo el proveedor admite el
New-PSDrivecmdlet del proveedor. Este cmdlet permite al usuario crear unidades para acceder al almacén de datos.El método RemoveDrive define cómo el proveedor admite el
Remove-PSDrivecmdlet del proveedor. Este cmdlet permite al usuario quitar unidades del almacén de datos.
Proveedores habilitados para elementos
Los proveedores habilitados para elementos permiten al usuario obtener, establecer o borrar los elementos del almacén de datos. Un "elemento" es un elemento del almacén de datos al que el usuario puede acceder o administrar de forma independiente. Para crear un proveedor habilitado para elementos, la clase de proveedor debe derivar de la clase System.Management.Automation.Provider.ItemCmdletProvider u otra clase que se derive de esa clase.
La clase ItemCmdletProvider define los métodos siguientes para implementar cmdlets de proveedor específicos. En la mayoría de los casos, para admitir un cmdlet de proveedor, debe sobrescribir el método al que llama el motor de PowerShell para invocar el cmdlet, como el método del cmdlet y, opcionalmente, puede sobrescribir un segundo método, como , para agregar parámetros dinámicos al ClearItem Clear-Item ClearItemDynamicParameters cmdlet.
Los métodos ClearItem y ClearItemDynamicParameters definen cómo el proveedor admite el
Clear-Itemcmdlet del proveedor. Este cmdlet permite al usuario quitar el valor de un elemento en el almacén de datos.Los métodos GetItem y GetItemDynamicParameters definen cómo el proveedor admite el
Get-Itemcmdlet del proveedor. Este cmdlet permite al usuario recuperar datos del almacén de datos.Los métodos SetItem y SetItemDynamicParameters definen cómo el proveedor admite el
Set-Itemcmdlet del proveedor. Este cmdlet permite al usuario actualizar los valores de los elementos del almacén de datos.Los métodos InvokeDefaultAction e InvokeDefaultActionDynamicParameters definen cómo el proveedor admite el
Invoke-Itemcmdlet del proveedor. Este cmdlet permite al usuario realizar la acción predeterminada especificada por el elemento.Los métodos ItemExists y ItemExistsDynamicParameters definen cómo el proveedor admite el
Test-Pathcmdlet del proveedor. Este cmdlet permite al usuario determinar si existen todos los elementos de una ruta de acceso.
Además de los métodos usados para implementar cmdlets de proveedor, la clase ItemCmdletProvider también define los métodos siguientes:
El método ExpandPath permite al usuario usar caracteres comodín al especificar la ruta de acceso del proveedor.
IsValidPath se usa para determinar si una ruta de acceso es sintáctica y semánticamente válida para el proveedor.
Proveedores habilitados para contenedores
Los proveedores habilitados para contenedores permiten al usuario administrar elementos que son contenedores. Un contenedor es un grupo de elementos secundarios con un elemento primario común. Para crear un proveedor habilitado para contenedor, la clase de proveedor debe derivar de la clase System.Management.Automation.Provider.ContainerCmdletProvider u otra clase que se derive de esa clase.
Importante
Los proveedores habilitados para contenedores no pueden acceder a los almacenes de datos que contienen contenedores anidados. Si un elemento secundario de un contenedor es otro contenedor, debe implementar un proveedor habilitado para la navegación.
La clase ContainerCmdletProvider define los métodos siguientes para implementar cmdlets de proveedor específicos. En la mayoría de los casos, para admitir un cmdlet de proveedor, debe sobrescribir el método al que llama el motor de PowerShell para invocar el cmdlet, como el método del cmdlet y, opcionalmente, puede sobrescribir un segundo método, como , para agregar parámetros dinámicos al CopyItem Copy-Item CopyItemDynamicParameters cmdlet.
Los métodos CopyItem y CopyItemDynamicParameters definen cómo el proveedor admite el
Copy-Itemcmdlet del proveedor. Este cmdlet permite al usuario copiar un elemento de una ubicación a otra.Los métodos GetChildItems y GetChildItemsDynamicParameters definen cómo el proveedor admite el
Get-ChildItemcmdlet del proveedor. Este cmdlet permite al usuario recuperar los elementos secundarios del elemento primario.Los métodos GetChildNames y GetChildNamesDynamicParameters definen cómo el proveedor admite el cmdlet provider si se especifica
Get-ChildItemsu parámetroName.Los métodos NewItem y NewItemDynamicParameters definen cómo el proveedor admite el
New-Itemcmdlet del proveedor. Este cmdlet permite al usuario crear nuevos elementos en el almacén de datos.Los métodos RemoveItem y RemoveItemDynamicParameters definen cómo el proveedor admite el
Remove-Itemcmdlet del proveedor. Este cmdlet permite al usuario quitar elementos del almacén de datos.Los métodos RenameItem y RenameItemDynamicParameters definen cómo el proveedor admite el
Rename-Itemcmdlet del proveedor. Este cmdlet permite al usuario cambiar el nombre de los elementos del almacén de datos.
Además de los métodos usados para implementar cmdlets de proveedor, la clase ContainerCmdletProvider también define los métodos siguientes:
La clase de proveedor puede usar el método HasChildItems para determinar si un elemento tiene elementos secundarios.
La clase de proveedor puede usar el método ConvertPath para crear una nueva ruta de acceso específica del proveedor a partir de una ruta de acceso especificada.
Proveedores habilitados para navegación
Los proveedores habilitados para la navegación permiten al usuario mover elementos en el almacén de datos. Para crear un proveedor habilitado para la navegación, la clase de proveedor debe derivar de la clase System.Management.Automation.Provider.NavigationCmdletProvider.
La clase NavigationCmdletProvider define los métodos siguientes para implementar cmdlets de proveedor específicos. En la mayoría de los casos, para admitir un cmdlet de proveedor, debe sobrescribir el método al que llama el motor de PowerShell para invocar el cmdlet, como el método del cmdlet y, opcionalmente, puede sobrescribir un segundo método, como , para agregar parámetros dinámicos al MoveItem Move-Item MoveItemDynamicParameters cmdlet.
Los métodos MoveItem y MoveItemDynamicParameters definen cómo el proveedor admite el
Move-Itemcmdlet del proveedor. Este cmdlet permite al usuario mover un elemento de una ubicación del almacén a otra.El método MakePath define cómo el proveedor admite el
Join-Pathcmdlet provider. Este cmdlet permite al usuario combinar un segmento de ruta de acceso principal y secundario para crear una ruta de acceso interna del proveedor.
Además de los métodos usados para implementar cmdlets de proveedor, la clase NavigationCmdletProvider también define los métodos siguientes:
El método GetChildName extrae el nombre del nodo secundario de una ruta de acceso.
El método GetParentPath extrae la parte primaria de una ruta de acceso.
El método IsItemContainer determina si el elemento es un elemento contenedor. En este contexto, un contenedor es un grupo de elementos secundarios en un elemento primario común.
El método NormalizeRelativePath devuelve una ruta de acceso a un elemento relativo a una ruta de acceso base especificada.
Proveedores habilitados para contenido
Los proveedores habilitados para contenido permiten al usuario borrar, obtener o establecer el contenido de los elementos de un almacén de datos. Por ejemplo, el proveedor FileSystem permite borrar, obtener y establecer el contenido de los archivos en el sistema de archivos. Para crear un proveedor habilitado para contenido, la clase de proveedor debe implementar los métodos de la interfaz System.Management.Automation.Provider.IContentCmdletProvider.
La interfaz IContentCmdletProvider define los métodos siguientes para implementar cmdlets de proveedor específicos. En la mayoría de los casos, para admitir un cmdlet de proveedor, debe sobrescribir el método al que llama el motor de PowerShell para invocar el cmdlet, como el método del cmdlet y, opcionalmente, puede sobrescribir un segundo método, como , para agregar parámetros dinámicos al ClearContent Clear-Content ClearContentDynamicParameters cmdlet.
Los métodos ClearContent y ClearContentDynamicParameters definen cómo el proveedor admite el
Clear-Contentcmdlet del proveedor. Este cmdlet permite al usuario eliminar el contenido de un elemento sin eliminarlo.Los métodos GetContentReader y GetContentReaderDynamicParameters definen cómo el proveedor admite el
Get-Contentcmdlet del proveedor. Este cmdlet permite al usuario recuperar el contenido de un elemento. ElGetContentReadermétodo devuelve una interfaz System.Management.Automation.Provider.IContentReader que define los métodos usados para leer el contenido.Los métodos GetContentWriter y GetContentWriterDynamicParameters definen cómo el proveedor admite el
Set-Contentcmdlet del proveedor. Este cmdlet permite al usuario actualizar el contenido de un elemento. ElGetContentWritermétodo devuelve una interfaz System.Management.Automation.Provider.IContentWriter que define los métodos usados para escribir el contenido.
Proveedores habilitados para propiedades
Los proveedores habilitados para propiedades permiten al usuario administrar las propiedades de los elementos del almacén de datos.
Para crear un proveedor habilitado para propiedades, la clase de proveedor debe implementar los métodos de las interfaces System.Management.Automation.Provider.IPropertyCmdletProvider y System.Management.Automation.Provider.IDynamicPropertyCmdletProvider. En la mayoría de los casos, para admitir un cmdlet de proveedor, debe sobrescribir el método al que llama el motor de PowerShell para invocar el cmdlet, como el método para el cmdlet Clear-Property y, opcionalmente, puede sobrescribir un segundo método, como , para agregar parámetros dinámicos al ClearProperty ClearPropertyDynamicParameters cmdlet.
La interfaz IPropertyCmdletProvider define los métodos siguientes para implementar cmdlets de proveedor específicos:
Los métodos ClearProperty y ClearPropertyDynamicParameters definen cómo el proveedor admite el
Clear-ItemPropertycmdlet del proveedor. Este cmdlet permite al usuario eliminar el valor de una propiedad.Los métodos GetProperty y GetPropertyDynamicParameters definen cómo el proveedor admite el
Get-ItemPropertycmdlet del proveedor. Este cmdlet permite al usuario recuperar la propiedad de un elemento.Los métodos SetProperty y SetPropertyDynamicParameters definen cómo el proveedor admite el
Set-ItemPropertycmdlet del proveedor. Este cmdlet permite al usuario actualizar las propiedades de un elemento.
La interfaz IDynamicPropertyCmdletProvider define los métodos siguientes para implementar cmdlets de proveedor específicos:
Los métodos CopyProperty y CopyPropertyDynamicParameters definen cómo el proveedor admite el
Copy-ItemPropertycmdlet del proveedor. Este cmdlet permite al usuario copiar una propiedad y su valor de una ubicación a otra.Los métodos MoveProperty y MovePropertyDynamicParameters definen cómo el proveedor admite el
Move-ItemPropertycmdlet del proveedor. Este cmdlet permite al usuario mover una propiedad y su valor de una ubicación a otra.Los métodos NewProperty y NewPropertyDynamicParameters definen cómo el proveedor admite el
New-ItemPropertycmdlet del proveedor. Este cmdlet permite al usuario crear una nueva propiedad y establecer su valor.Los métodos RemoveProperty y RemovePropertyDynamicParameters definen cómo el proveedor admite el
Remove-ItemPropertycmdlet . Este cmdlet permite al usuario eliminar una propiedad y su valor.Los métodos RenameProperty y RenamePropertyDynamicParameters definen cómo el proveedor admite el
Rename-ItemPropertycmdlet . Este cmdlet permite al usuario cambiar el nombre de una propiedad.