Partager via


structure WSMAN_SHELL_STARTUP_INFO_V10 (wsman.h)

Définit les paramètres de démarrage de l’interpréteur de commandes à utiliser avec la fonction WSManCreateShell . La structure doit être allouée par le client et passée à la fonction WSManCreateShell .

La configuration passée à la fonction WSManCreateShell peut affecter directement le comportement d’une commande exécutée dans l’interpréteur de commandes. Un exemple typique est l’argument workingDirectory qui décrit le répertoire de travail associé à chaque processus, que le système d’exploitation utilise lors de la tentative de localisation des fichiers spécifiés à l’aide d’un chemin d’accès relatif.

En l’absence d’exigences spécifiques pour l’attribution de noms de flux, les clients et services doivent tenter d’utiliser STDIN pour les flux d’entrée, STDOUT pour le flux de sortie par défaut et STDERR pour l’erreur ou status flux de sortie.

Syntaxe

typedef struct _WSMAN_SHELL_STARTUP_INFO_V10 {
  WSMAN_STREAM_ID_SET            *inputStreamSet;
  WSMAN_STREAM_ID_SET            *outputStreamSet;
  DWORD                          idleTimeoutMs;
  PCWSTR                         workingDirectory;
  WSMAN_ENVIRONMENT_VARIABLE_SET *variableSet;
} WSMAN_SHELL_STARTUP_INFO_V10;

Membres

inputStreamSet

Pointeur vers une structure de WSMAN_STREAM_ID_SET qui spécifie un ensemble de flux d’entrée pour l’interpréteur de commandes. Les flux non présents dans le filtre peuvent être ignorés par l’implémentation de l’interpréteur de commandes. Pour l’interpréteur de commandes Windows Cmd.exe, cette valeur doit être L"stdin ». Si la valeur est NULL, l’implémentation utilise un tableau avec L"stdin » comme valeur par défaut.

outputStreamSet

Pointeur vers une structure WSMAN_STREAM_ID_SET qui spécifie un ensemble de flux de sortie pour l’interpréteur de commandes. Les flux non présents dans le filtre peuvent être ignorés par l’implémentation de l’interpréteur de commandes. Pour l’interpréteur de commandes Windows cmd.exe, cette valeur doit être L"stdout stderr ». Si la valeur est NULL, l’implémentation utilise un tableau avec L"stdout » et L"stderr » comme valeur par défaut.

idleTimeoutMs

Spécifie la durée maximale, en millisecondes, que l’interpréteur de commandes reste ouvert sans demande du client. Lorsque la durée maximale est dépassée, l’interpréteur de commandes est automatiquement supprimé. Toute valeur comprise entre 0 et 0xFFFFFFFF peut être définie. Cette durée a une valeur maximale spécifiée par le paramètre GPO Délai d’inactivité, s’il est activé, ou par la configuration locale IdleTimeout. La valeur par défaut de la durée maximale dans la configuration GPO/locale est de 15 minutes. Toutefois, un administrateur système peut modifier cette valeur. Pour utiliser la valeur maximale de la configuration GPO/locale, le client doit spécifier 0 (zéro) dans ce champ. Si une valeur explicite comprise entre 0 et 0xFFFFFFFF est utilisée, la valeur minimale entre la valeur de l’API explicite et la valeur de la configuration GPO/locale est utilisée.

workingDirectory

Spécifie le répertoire de départ d’un interpréteur de commandes. Il est utilisé avec n’importe quelle commande d’exécution. Si ce membre est une valeur NULL , un répertoire par défaut est utilisé par l’ordinateur distant lors de l’exécution de la commande. Une valeur vide est traitée par le protocole sous-jacent comme une valeur omise.

variableSet

Pointeur vers une structure WSMAN_ENVIRONMENT_VARIABLE_SET qui spécifie un tableau de paires nom et valeur de variable, qui décrivent l’environnement de départ de l’interpréteur de commandes. Le contenu de ces éléments est spécifique à l’interpréteur de commandes et peut être défini en termes d’autres variables d’environnement. Si une valeur NULL est transmise, l’environnement par défaut est utilisé côté serveur.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7
Serveur minimal pris en charge Windows Server 2008 R2
En-tête wsman.h
Composant redistribuable Windows Management Framework sur Windows Server 2008 avec SP2, Windows Vista avec SP1 et Windows Vista avec SP2