Disconnect-PSSession
Se déconnecte d’une session.
Syntaxe
Session (Par défaut)
Disconnect-PSSession
[-Session] <PSSession[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Name
Disconnect-PSSession
-Name <String[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InstanceId
Disconnect-PSSession
-InstanceId <Guid[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Id
Disconnect-PSSession
[-Id] <Int32[]>
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
L’applet Disconnect-PSSession de commande déconnecte une session PowerShell (« PSSession »), telle qu’une session démarrée à l’aide de l’applet New-PSSession de commande, de la session en cours. Par conséquent, la PSSession est dans un état déconnecté. Vous pouvez vous connecter à la PSSession déconnectée à partir de la session en cours ou d’une autre session sur l’ordinateur local ou un autre ordinateur.
L’applet Disconnect-PSSession de commande déconnecte uniquement les PSSessions ouvertes qui sont connectées à la session en cours.
Disconnect-PSSession ne peut pas déconnecter les PSSessions interrompues ou fermées, ou les PSSessions interactives démarrées à l’aide de l’applet Enter-PSSession de commande, et il ne peut pas déconnecter les PSSessions connectées à d’autres sessions.
Pour vous reconnecter à une PSSession déconnectée, utilisez les applets de Connect-PSSession commande ou Receive-PSSession .
Lorsqu’un PSSession est déconnecté, les commandes du PSSession continuent de s’exécuter jusqu’à ce qu’elles soient terminées, à moins que le PSSession n’expire ou que les commandes du PSSession ne soient bloquées par un tampon de sortie plein. Pour modifier le délai d’inactivité, utilisez le paramètre IdleTimeoutSec. Pour modifier le mode de mise en mémoire tampon de sortie, utilisez le paramètre OutputBufferingMode Vous pouvez également utiliser le paramètre InDisconnectedSession de l’applet de commande Invoke-Command pour exécuter une commande dans une session déconnectée.
Pour plus d’informations sur la fonctionnalité Sessions déconnectées, consultez about_Remote_Disconnected_Sessions.
Cette applet de commande est introduite dans Windows PowerShell 3.0.
Exemples
Exemple 1 : déconnecter une session par nom
Cette commande déconnecte la session en cours de la session en cours pour PSSession UpdateSession sur l’ordinateur Server01. La commande utilise le paramètre Name pour identifier le PSSession.
PS> Disconnect-PSSession -Name UpdateSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 UpdateSession Server01 Disconnected Microsoft.PowerShell None
La sortie indique que la tentative de déconnexion a réussi. L’état de la session est Déconnecté et la disponibilité est Aucune, ce qui indique que la session n’est pas occupée et qu’elle peut être reconnectée.
Exemple 2 : déconnecter une session d’un ordinateur spécifique
Cette commande déconnecte ITTask PSSession sur l’ordinateur Server12 de la session en cours.
La session ITTask a été créée dans la session en cours et se connecte à l’ordinateur Server12. La commande utilise l’applet de commande Get-PSSession pour obtenir la session et l’applet de commande Disconnect-PSSession pour la déconnecter.
PS> Get-PSSession -ComputerName Server12 -Name ITTask |
Disconnect-PSSession -OutputBufferingMode Drop -IdleTimeoutSec 86400
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server12 Disconnected ITTasks None
La Disconnect-PSSession commande utilise le paramètre OutputBufferingMode pour définir le mode de sortie sur Drop. Ce paramètre garantit que le script en cours d’exécution dans la session peut continuer à s’exécuter même si la mémoire tampon de sortie de session est pleine. Étant donné que le script écrit sa sortie dans un rapport sur un partage de fichiers, d’autres sorties peuvent être perdues sans conséquence.
La commande utilise également le paramètre IdleTimeoutSec pour étendre le délai d’inactivité de la session à 24 heures. Ce paramètre permet à cet administrateur ou à d’autres administrateurs de se reconnecter à la session pour vérifier que le script s’est exécuté et dépanner si nécessaire.
Exemple 3 : utilisation de plusieurs sessions PSSession sur plusieurs ordinateurs
Cette série de commandes montre comment l’applet de commande Disconnect-PSSession peut être utilisée dans un scénario d’entreprise. Dans ce cas, un nouveau technicien démarre un script dans une session sur un ordinateur distant et rencontre un problème. Le technicien se déconnecte de la session afin qu’un responsable plus expérimenté puisse se connecter à la session et résoudre le problème.
PS> $s = New-PSSession -ComputerName Srv1, Srv2, Srv30 -Name ITTask
PS> Invoke-Command $s -FilePath \\Server01\Scripts\Get-PatchStatus.ps1
PS> Get-PSSession -Name ITTask -ComputerName Srv1 | Disconnect-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Srv1 Disconnected Microsoft.PowerShell None
PS> Get-PSSession -ComputerName Srv1, Srv2, Srv30 -Name ITTask
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Srv1 Disconnected Microsoft.PowerShell None
2 ITTask Srv2 Opened Microsoft.PowerShell Available
3 ITTask Srv30 Opened Microsoft.PowerShell Available
PS> Get-PSSession -ComputerName Srv1 -Name ITTask -Credential Domain01\User01
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Srv1 Disconnected Microsoft.PowerShell None
PS> $s = Connect-PSSession -ComputerName Srv1 -Name ITTask -Credential Domain01\User01
PS> Invoke-Command -Session $s {dir $home\Scripts\PatchStatusOutput.ps1}
PS> Invoke-Command -Session $s {mkdir $home\Scripts\PatchStatusOutput}
PS> Invoke-Command -Session $s -FilePath \\Server01\Scripts\Get-PatchStatus.ps1
PS> Disconnect-PSSession -Session $s
Le technicien commence par créer des sessions sur plusieurs ordinateurs distants et exécuter un script dans chaque session. La première commande utilise l’applet New-PSSession de commande pour créer la session ITTask sur trois ordinateurs distants. La commande enregistre les sessions dans la variable $s. La deuxième commande utilise le paramètre FilePath de l’applet Invoke-Command de commande pour exécuter un script dans les sessions de la variable $s.
Le script exécuté sur l’ordinateur Srv1 génère des erreurs inattendues. Le technicien contacte son responsable et demande de l’aide. Le responsable demande au technicien de se déconnecter de la session afin qu’il puisse enquêter. La deuxième commande utilise l’applet Get-PSSession de commande pour obtenir la session ITTask sur l’ordinateur Srv1 et l’applet de commande Disconnect-PSSession pour la déconnecter. Cette commande n’affecte pas les sessions ITTask sur les autres ordinateurs.
La troisième commande utilise l’applet Get-PSSession de commande pour obtenir les sessions ITTask. Le résultat indique que les sessions ITTask sur les ordinateurs Srv2 et Srv30 n’ont pas été affectées par la commande de déconnexion.
Le gestionnaire se connecte à son ordinateur personnel, se connecte à son réseau d’entreprise, démarre Windows PowerShell et utilise l’applet Get-PSSession de commande pour obtenir la session ITTask sur l’ordinateur Srv1. Il utilise les informations d’identification du technicien pour accéder à la session.
Ensuite, le gestionnaire utilise l’applet Connect-PSSession de commande pour se connecter à la session ITTask sur l’ordinateur Srv1. La commande enregistre la session dans la variable $s.
Le gestionnaire utilise l’applet de commande Invoke-Command pour exécuter certaines commandes de diagnostic dans la session dans la variable $s. Il reconnaît que le script a échoué parce qu’il n’a pas trouvé de répertoire requis.
Le gestionnaire utilise la fonction MkDir pour créer le répertoire, puis redémarre le script Get-PatchStatus.ps1 et se déconnecte de la session. Le responsable signale ses résultats au technicien, suggère qu’il se reconnecte à la session pour effectuer les tâches et lui demande d’ajouter une commande au script Get-PatchStatus.ps1 qui crée le répertoire requis s’il n’existe pas.
Exemple 4 : Modifier la valeur de délai d’expiration d’une session PSSession
Cet exemple montre comment corriger la valeur de l'propriété IdleTimeout d’une session afin qu’elle puisse être déconnectée.
La propriété de délai d’inactivité d’une session est essentielle pour les sessions déconnectées, car elle détermine la durée pendant laquelle une session déconnectée est conservée avant sa suppression. Vous pouvez définir l’option de délai d’inactivité lorsque vous créez une session et lorsque vous la déconnectez. Les valeurs par défaut du délai d’inactivité d’une session sont définies dans la variable de préférence $PSSessionOption sur l’ordinateur local et dans la configuration de session sur l’ordinateur distant. Les valeurs définies pour la session sont prioritaires sur les valeurs définies dans la configuration de session, mais les valeurs de session ne peuvent pas dépasser les quotas définis dans la configuration de session, telles que les MaxIdleTimeoutMs valeur.
PS> $Timeout = New-PSSessionOption -IdleTimeout 172800000
PS> $s = New-PSSession -Computer Server01 -Name ITTask -SessionOption $Timeout
PS> Disconnect-PSSession -Session $s
Disconnect-PSSession : The session ITTask cannot be disconnected because the specified
idle timeout value 172800(seconds) is either greater than the server maximum allowed
43200 (seconds) or less that the minimum allowed60(seconds). Choose an idle time out
value that is within the allowed range and try again.
PS> Invoke-Command -ComputerName Server01 {Get-PSSessionConfiguration Microsoft.PowerShell} |
Format-List -Property *
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : https://schemas.microsoft.com/powershell/microsoft.powershell
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : https://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 5
lang : en-US
SupportsOptions : true
ExactMatch : true
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
SecurityDescriptorSddl : O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 2147483647
Uri : https://schemas.microsoft.com/powershell/microsoft.powershell
SDKVersion : 2
Name : microsoft.powershell
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 15
ParentResourceUri : https://schemas.microsoft.com/powershell/microsoft.powershell
Enabled : true
MaxShells : 25
MaxShellsPerUser : 25
Permission : BUILTIN\Administrators AccessAllowed
PSComputerName : localhost
RunspaceId : aea84310-6dbf-4c21-90ac-13980039925a
PSShowComputerName : True
PS> $s.Runspace.ConnectionInfo
ConnectionUri : http://Server01/wsman
ComputerName : Server01
Scheme : http
Port : 80
AppName : /wsman
Credential :
ShellUri : https://schemas.microsoft.com/powershell/Microsoft.PowerShell
AuthenticationMechanism : Default
CertificateThumbprint :
MaximumConnectionRedirectionCount : 5
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize : 209715200
UseCompression : True
NoMachineProfile : False
ProxyAccessType : None
ProxyAuthentication : Negotiate
ProxyCredential :
SkipCACheck : False
SkipCNCheck : False
SkipRevocationCheck : False
NoEncryption : False
UseUTF16 : False
OutputBufferingMode : Drop
IncludePortInSPN : False
Culture : en-US
UICulture : en-US
OpenTimeout : 180000
CancelTimeout : 60000
OperationTimeout : 180000
IdleTimeout : 172800000
PS> Disconnect-PSSession $s -IdleTimeoutSec 43200
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
4 ITTask Server01 Disconnected Microsoft.PowerShell None
PS> $s.Runspace.ConnectionInfo.IdleTimeout
43200000
La première commande utilise l’applet de commande New-PSSessionOption pour créer un objet d’option de session. Il utilise le paramètre IdleTimeout pour définir un délai d’inactivité de 48 heures (172800000 millisecondes). La commande enregistre l’objet d’option de session dans la variable $Timeout.
La deuxième commande utilise l’applet New-PSSession de commande pour créer la session ITTask sur l’ordinateur Server01. La commande enregistre la session dans la variable $s. La valeur du paramètre SessionOption est le délai d’inactivité de 48 heures dans la variable $Timeout.
La troisième commande déconnecte la session ITTask dans la variable $s. La commande échoue, car la valeur du délai d’inactivité de la session dépasse le quota MaxIdleTimeoutMs dans la configuration de la session. Étant donné que le délai d’inactivité n’est pas utilisé tant que la session n’est pas déconnectée, cette violation peut ne pas être détectée pendant l’utilisation de la session.
La quatrième commande utilise l’applet Invoke-Command de commande pour exécuter une Get-PSSessionConfiguration commande pour la configuration de session Microsoft.PowerShell sur l’ordinateur Server01. La commande utilise l’applet Format-List de commande pour afficher toutes les propriétés de la configuration de session dans une liste. Le résultat indique que la propriété MaxIdleTimeoutMS , qui établit la valeur IdleTimeout maximale autorisée pour les sessions qui utilisent la configuration de session, est de 43200000 millisecondes (12 heures).
La cinquième commande récupère les valeurs d’option de session de la session dans la variable $s. Les valeurs de nombreuses options de session sont des propriétés de la propriété ConnectionInfo de la propriété Runspace de la session. Le résultat indique que la valeur de la propriété IdleTimeout de la session est de 172800000 millisecondes (48 heures), ce qui ne respecte pas le quota MaxIdleTimeoutMs de 12 heures dans la configuration de la session. Pour résoudre ce conflit, vous pouvez utiliser le paramètre ConfigurationName pour sélectionner une autre configuration de session ou utiliser le paramètre IdleTimeout pour réduire le délai d’inactivité de la session.
La sixième commande déconnecte la session. Il utilise le paramètre IdleTimeoutSec pour définir le délai d’inactivité sur le maximum de 12 heures.
La septième commande obtient la valeur de la propriété IdleTimeout de la session déconnectée, qui est mesurée en millisecondes. La sortie confirme que la commande a réussi.
Paramètres
-Confirm
Vous invite à confirmer avant d’exécuter l’applet de commande.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | cf |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Id
Se déconnecte des sessions avec l’ID de session spécifié. Tapez un ou plusieurs ID (séparés par des virgules) ou utilisez l’opérateur de plage (..) pour spécifier une plage d’ID.
Pour obtenir l’ID d’une session, utilisez l’applet de commande Get-PSSession. L’ID d’instance est stocké dans la propriété ID de la session.
Propriétés du paramètre
| Type: | Int32[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
Id
| Position: | 1 |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-IdleTimeoutSec
Modifie la valeur du délai d’inactivité de la PSSession déconnectée. Entrez une valeur en secondes. La valeur minimale est 60 (1 minute).
Le délai d’inactivité détermine la durée pendant laquelle la session PSSession déconnectée est maintenue sur l’ordinateur distant. À l’expiration du délai d’expiration, PSSession est supprimée.
Les PSSessions déconnectées sont considérées comme inactives à partir du moment où elles sont déconnectées, même si des commandes sont en cours d’exécution dans la session déconnectée.
La valeur par défaut du délai d’inactivité d’une session est définie par la valeur de la IdleTimeoutMs propriété de la configuration de session. La valeur par défaut est 7200000 millisecondes (2 heures).
La valeur de ce paramètre est prioritaire sur la valeur de la propriété IdleTimeout de la variable de préférence $PSSessionOption et sur la valeur de délai d’inactivité par défaut dans la configuration de session. Toutefois, cette valeur ne peut pas dépasser la valeur de la MaxIdleTimeoutMs propriété de la configuration de session. La valeur par défaut de MaxIdleTimeoutMs est de 12 heures (43200000 millisecondes).
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | 60 |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-InstanceId
Se déconnecte des sessions avec les ID d’instance spécifiés.
L’ID d’instance est un GUID qui identifie de façon unique une session sur un ordinateur local ou distant. L’ID d’instance est unique, même entre plusieurs sessions sur plusieurs ordinateurs.
Pour obtenir l’ID d’instance d’une session, utilisez l’applet de commande Get-PSSession. L’ID d’instance est stocké dans la propriété InstanceID de la session.
Propriétés du paramètre
| Type: | Guid[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
InstanceId
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-Name
Se déconnecte des sessions avec les noms conviviaux spécifiés. Les caractères génériques sont autorisés.
Pour obtenir le nom convivial d’une session, utilisez l’applet de commande Get-PSSession. Le nom convivial est stocké dans la propriété Name de la session.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
Name
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-OutputBufferingMode
Détermine la façon dont la sortie de commande est gérée dans la session déconnectée lorsque la mémoire tampon de sortie est pleine. La valeur par défaut est Block.
Si la commande de la session déconnectée retourne la sortie et que la mémoire tampon de sortie se remplit, la valeur de ce paramètre détermine efficacement si la commande continue à s’exécuter pendant la déconnexion de la session. La valeur Block suspend la commande jusqu’à ce que la session soit reconnectée. La valeur Drop permet à la commande de se terminer, bien que des données puissent être perdues. Lorsque vous utilisez la valeur Drop , redirigez la sortie de la commande vers un fichier sur le disque.
Les valeurs valides sont les suivantes :
- Bloquer: lorsque la mémoire tampon de sortie est pleine, l’exécution est suspendue jusqu’à ce que la mémoire tampon soit effacée.
- Supprimer: lorsque la mémoire tampon de sortie est pleine, l’exécution se poursuit. Lorsque la nouvelle sortie est enregistrée, la sortie la plus ancienne est supprimée.
- Aucun: aucun mode de mise en mémoire tampon de sortie n’est spécifié. La valeur de la propriété OutputBufferingMode de la configuration de session est utilisée pour la session déconnectée.
Propriétés du paramètre
| Type: | OutputBufferingMode |
| Valeur par défaut: | Block |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Session
Déconnecte des PSSessions spécifiées. Entrez des objets PSSession, tels que ceux que l’applet New-PSSession de commande renvoie. Vous pouvez également rediriger un objet PSSession vers Disconnect-PSSession.
L’applet Get-PSSession de commande peut obtenir toutes les PSSessions qui se terminent sur un ordinateur distant, y compris les PSSessions qui sont déconnectées et les PSSessions qui sont connectées à d’autres sessions sur d’autres ordinateurs.
Disconnect-PSSession déconnecte uniquement les PSSession qui sont connectés à la session en cours. Si vous dirigez d’autres PSSessions vers Disconnect-PSSession, la Disconnect-PSSession commande échoue.
Propriétés du paramètre
| Type: | PSSession[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
Session
| Position: | 1 |
| Obligatoire: | True |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-ThrottleLimit
Définit la limite de limitation pour la commande Disconnect-PSSession.
La limite de limitation est le nombre maximal de connexions simultanées qui peuvent être établies pour exécuter cette commande. Si vous omettez ce paramètre ou entrez une valeur de 0, la valeur par défaut 32 est utilisée.
La limite de limitation s’applique uniquement à la commande actuelle, et non à la session ou à l’ordinateur.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | 32 |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | Wi |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
PSSession
Vous pouvez rediriger une session vers Disconnect-PSSession.
Sorties
PSSession
Disconnect-PSSession Renvoie un objet qui représente la session qu’il a déconnectée.
Notes
L’applet de commande
Disconnect-PSSessionfonctionne uniquement lorsque les ordinateurs locaux et distants exécutent PowerShell 3.0 ou version ultérieure.Si vous utilisez l’applet de commande
Disconnect-PSSessionsur une session déconnectée, la commande n’a aucun effet sur la session et ne génère pas d’erreurs.Les sessions de bouclage déconnectées avec des jetons de sécurité interactifs (celles créées avec le paramètre EnableNetworkAccess) peuvent être reconnectées uniquement à partir de l’ordinateur sur lequel la session a été créée. Cette restriction protège l’ordinateur contre l’accès malveillant.
Lorsque vous déconnectez une session PSSession, l’état de session est déconnecté et la disponibilité est Aucun.
La valeur de la propriété State est relative à la session active. Par conséquent, une valeur de déconnecté signifie que la session PSSession n’est pas connectée à la session active. Toutefois, cela ne signifie pas que la session PSSession est déconnectée de toutes les sessions. Il peut être connecté à une autre session. Pour déterminer si vous pouvez vous connecter ou vous reconnecter à la session, utilisez la propriété Availability.
Une valeur Availability de None indique que vous pouvez vous connecter à la session. La valeur Occupé indique que vous ne pouvez pas vous connecter à la session PSSession, car elle est connectée à une autre session.
Pour plus d’informations sur les valeurs de la propriété State des sessions, consultez 'énumération RunspaceState.
Pour plus d’informations sur les valeurs de la propriété Availability des sessions, consultez 'énumération RunspaceAvailability.