Freigeben über


WSMAN_SHELL_STARTUP_INFO_V10-Struktur (wsman.h)

Definiert die Shell-Startparameter, die mit der WSManCreateShell-Funktion verwendet werden sollen. Die Struktur muss vom Client zugewiesen und an die WSManCreateShell-Funktion übergeben werden.

Die an die WSManCreateShell-Funktion übergebene Konfiguration kann sich direkt auf das Verhalten eines Befehls auswirken, der innerhalb der Shell ausgeführt wird. Ein typisches Beispiel ist das workingDirectory-Argument , das das arbeitsverzeichnis beschreibt, das den einzelnen Prozessen zugeordnet ist, das das Betriebssystem verwendet, wenn versucht wird, dateien zu suchen, die mithilfe eines relativen Pfads angegeben werden.

Mangels spezifischer Anforderungen für die Benennung von Datenströmen sollten Clients und Dienste versuchen, STDIN für Eingabedatenströme, STDOUT für den Standardausgabedatenstrom und STDERR für den Fehler oder status Ausgabedatenstrom zu verwenden.

Syntax

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;

Member

inputStreamSet

Ein Zeiger auf eine WSMAN_STREAM_ID_SET-Struktur , die einen Satz von Eingabedatenströmen für die Shell angibt. Streams, die nicht im Filter vorhanden sind, können von der Shellimplementierung ignoriert werden. Für die Windows Cmd.exe Shell sollte dieser Wert L"stdin" sein. Wenn der Wert NULL ist, verwendet die Implementierung ein Array mit L"stdin" als Standardwert.

outputStreamSet

Ein Zeiger auf eine WSMAN_STREAM_ID_SET-Struktur , die einen Satz von Ausgabedatenströmen für die Shell angibt. Streams, die nicht im Filter vorhanden sind, können von der Shellimplementierung ignoriert werden. Für die Windows cmd.exe Shell sollte dieser Wert L"stdout stderr" sein. Wenn der Wert NULL ist, verwendet die Implementierung ein Array mit L"stdout" und L"stderr" als Standardwert.

idleTimeoutMs

Gibt die maximale Dauer an, in Millisekunden bleibt die Shell ohne Clientanforderung geöffnet. Wenn die maximale Dauer überschritten wird, wird die Shell automatisch gelöscht. Jeder Wert von 0 bis 0xFFFFFFFF kann festgelegt werden. Diese Dauer hat einen maximalen Wert, der durch die Einstellung des Leerlauftimeout-Gruppenrichtlinienobjekts (falls aktiviert) oder durch die lokale IdleTimeout-Konfiguration angegeben wird. Der Standardwert der maximalen Dauer in der Gruppenrichtlinienobjekt-/lokalen Konfiguration beträgt 15 Minuten. Ein Systemadministrator kann diesen Wert jedoch ändern. Um den Maximalen Wert aus der Gruppenrichtlinienobjekt-/lokalen Konfiguration zu verwenden, sollte der Client in diesem Feld 0 (Null) angeben. Wenn ein expliziter Wert zwischen 0 und 0xFFFFFFFF verwendet wird, wird der Mindestwert zwischen dem expliziten API-Wert und dem Wert aus der Gruppenrichtlinienobjekt-/lokalen Konfiguration verwendet.

workingDirectory

Gibt das Startverzeichnis für eine Shell an. Sie wird mit jedem Ausführungsbefehl verwendet. Wenn es sich bei diesem Member um einen NULL-Wert handelt, wird beim Ausführen des Befehls vom Remotecomputer ein Standardverzeichnis verwendet. Ein leerer Wert wird vom zugrunde liegenden Protokoll als ausgelassener Wert behandelt.

variableSet

Ein Zeiger auf eine WSMAN_ENVIRONMENT_VARIABLE_SET-Struktur , die ein Array von Variablennamen- und Wertpaaren angibt, die die Startumgebung für die Shell beschreiben. Der Inhalt dieser Elemente ist shellspezifisch und kann in Bezug auf andere Umgebungsvariablen definiert werden. Wenn ein NULL-Wert übergeben wird, wird die Standardumgebung auf der Serverseite verwendet.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7
Unterstützte Mindestversion (Server) Windows Server 2008 R2
Kopfzeile wsman.h
Verteilbare Komponente Windows Management Framework unter Windows Server 2008 mit SP2, Windows Vista mit SP1 und Windows Vista mit SP2