WSMAN_SHELL_STARTUP_INFO_V10 结构 (wsman.h)

定义要与 WSManCreateShell 函数一起使用的 shell 启动参数。 结构必须由客户端分配并传递给 WSManCreateShell 函数。

传递给 WSManCreateShell 函数的配置可以直接影响在 shell 中执行的命令的行为。 典型示例是描述与每个进程关联的工作目录的 workingDirectory 参数,操作系统在尝试查找使用相对路径指定的文件时会使用该目录。

如果没有流命名的特定要求,客户端和服务应尝试对输入流使用 STDIN ,将 STDOUT 用于默认输出流,将 STDERR 用于错误或状态输出流。

语法

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;

成员

inputStreamSet

指向 WSMAN_STREAM_ID_SET 结构的指针,该结构指定 shell 的一组输入流。 shell 实现可以忽略筛选器中不存在的流。 对于 Windows Cmd.exe shell,此值应为 L“stdin”。 如果值为 NULL,则实现使用具有 L“stdin”的数组作为默认值。

outputStreamSet

指向 WSMAN_STREAM_ID_SET 结构的指针,该结构指定 shell 的一组输出流。 shell 实现可以忽略筛选器中不存在的流。 对于 Windows cmd.exe shell,此值应为 L“stdout stderr”。 如果值为 NULL,则实现使用具有 L“stdout”和 L“stderr”的数组作为默认值。

idleTimeoutMs

指定在没有任何客户端请求的情况下 shell 将保持打开状态的最大持续时间(以毫秒为单位)。 超过最大持续时间时,会自动删除 shell。 可以设置从 0 到 0xFFFFFFFF 的任何值。 此持续时间具有由空闲超时 GPO 设置(如果已启用)或 IdleTimeout 本地配置指定的最大值。 GPO/本地配置中最大持续时间的默认值为 15 分钟。 但是,系统管理员可以更改此值。 若要使用 GPO/本地配置中的最大值,客户端应在此字段中指定 0 (零) 。 如果使用 0 到 0xFFFFFFFF 之间的显式值,则使用显式 API 值与 GPO/本地配置中的值之间的最小值。

workingDirectory

指定 shell 的起始目录。 它与任何执行命令一起使用。 如果此成员为 NULL 值,则远程计算机在执行命令时将使用默认目录。 基础协议将空值视为省略的值。

variableSet

指向 WSMAN_ENVIRONMENT_VARIABLE_SET 结构的指针,该结构指定变量名称和值对的数组,用于描述 shell 的起始环境。 这些元素的内容特定于 shell,并且可以根据其他环境变量进行定义。 如果传递 NULL 值, 则服务器端使用默认环境。

要求

要求
最低受支持的客户端 Windows 7
最低受支持的服务器 Windows Server 2008 R2
标头 wsman.h
可再发行组件 在 Windows Server 2008 SP2、Windows Vista SP1 和 Windows Vista SP2 上Windows Management Framework