WSManCreateShell 函数 (wsman.h)

创建 shell 对象。 返回的 shell 句柄标识一个对象,该对象定义可在其中运行命令的上下文。 上下文由环境变量、输入和输出流以及工作目录定义。 上下文可以直接影响命令的行为。 shell 上下文是在连接参数指定的远程计算机上创建的,并使用凭据参数进行身份验证。

语法

void WSManCreateShell(
  [in, out]      WSMAN_SESSION_HANDLE     session,
                 DWORD                    flags,
  [in]           PCWSTR                   resourceUri,
  [in, optional] WSMAN_SHELL_STARTUP_INFO *startupInfo,
  [in, optional] WSMAN_OPTION_SET         *options,
  [in, optional] WSMAN_DATA               *createXml,
  [in]           WSMAN_SHELL_ASYNC        *async,
  [out]          WSMAN_SHELL_HANDLE       *shell
);

参数

[in, out] session

指定 WSManCreateSession 调用返回的会话句柄。 此参数不能为 NULL

flags

保留供将来使用。 必须为零。

[in] resourceUri

定义要创建的 shell 类型。 shell 类型由唯一 URI 定义。 调用返回的实际 shell 对象取决于指定的 URI。 此参数不能为 NULL。 若要创建 Windows cmd.exe shell,请使用 WSMAN_CMDSHELL_URI 资源 URI。

[in, optional] startupInfo

指向 WSMAN_SHELL_STARTUP_INFO 结构的指针,该结构指定 shell 的输入和输出流、工作目录、空闲超时和选项。

如果此参数为 NULL,则使用默认值。

[in, optional] options

指向 WSMAN_OPTION_SET 结构的指针,该结构指定 shell 的一组选项。

[in, optional] createXml

指向 WSMAN_DATA 结构的指针,该结构定义 shell 的开放上下文。 内容应为有效的 XML 字符串。 此参数可以为 NULL。

[in] async

定义异步结构。 异步结构包含可选的用户上下文和强制回调函数。 有关详细信息,请参阅 WSMAN_SHELL_ASYNC 结构。 此参数不能为 NULL ,应通过调用 WSManCloseShell 方法关闭。

[out] shell

定义唯一标识 shell 对象的 shell 句柄。 资源句柄用于跟踪 shell 的客户端终结点,并由其他 WinRM 方法用来与 shell 对象交互。 应通过调用 WSManCloseShell 方法删除 shell 对象。 此参数不能为 NULL

返回值

要求

   
最低受支持的客户端 Windows 7
最低受支持的服务器 Windows Server 2008 R2
目标平台 Windows
标头 wsman.h
Library WsmSvc.lib
DLL WsmSvc.dll
可再发行组件 Windows Server 2008 SP2 和 Windows Vista SP2 上的Windows Management Framework