Estado de sesión de Windows PowerShell
El estado de la sesión se refiere a la configuración actual de una sesión o módulo de Windows PowerShell. Una sesión de Windows PowerShell es el entorno operativo que utiliza de forma interactiva el usuario de la línea de comandos o mediante programación una aplicación host. El estado de sesión de una sesión se denomina estado de sesión global.
Desde la perspectiva del desarrollador, una sesión de Windows PowerShell se refiere al tiempo entre el momento en que una aplicación host abre un espacio de ejecución de Windows PowerShell y el momento en que cierra el espacio de ejecución. Visto de otra manera, la sesión es la vida útil de una instancia del motor de Windows PowerShell que se invoca mientras existe el espacio de ejecución.
Estado de sesión del módulo
Los estados de sesión del módulo se crean cada vez que el módulo o uno de sus módulos anidados se importa a la sesión. Cuando un módulo exporta un elemento como un cmdlet, una función o un script, se agrega una referencia a ese elemento al estado global de la sesión. Sin embargo, cuando se ejecuta el elemento, se ejecuta dentro del estado de sesión del módulo.
Datos de estado de sesión
Los datos del estado de la sesión pueden ser públicos o privados. Los datos públicos están disponibles para llamadas desde fuera del estado de sesión, mientras que los datos privados están disponibles solo para llamadas desde dentro del estado de sesión. Por ejemplo, un módulo puede tener una función privada que solo puede ser llamada por el módulo o solo internamente por un elemento público que ha sido exportado. Esto es similar a los miembros públicos y privados de un tipo .NET Framework.
Los datos del estado de la sesión los almacena la instancia actual del motor de ejecución dentro del contexto de la sesión actual de Windows PowerShell. Los datos del estado de la sesión constan de los siguientes elementos:
-
Información de ruta
Información de la unidad
Información del proveedor de Windows PowerShell
Información sobre los módulos importados y referencias a los elementos del módulo (como cmdlets, funciones y scripts) que exporta el módulo. Esta información y estas referencias son solo para el estado de la sesión global.
Información de la variable de estado de sesión
Acceso a datos de estado de sesión dentro de cmdlets
Los cmdlets pueden acceder a los datos del estado de la sesión indirectamente a través de la propiedad System.Management.Automation.PSCmdlet.Sessionstate* de la clase cmdlet o directamente a través de la clase System.Management.Automation.Sessionstate. La clase System.Management.Automation.Sessionstate proporciona propiedades que se pueden usar para investigar diferentes tipos de datos de estado de sesión.
Ver también
System.Management.Automation.PSCmdlet.Sessionstate
System.Management.Automation.Sessionstate?Displayproperty=Nombre completo
Cmdlets de Windows PowerShell
Escribir un cmdlet de Windows PowerShell
SDK de shell de Windows PowerShell