ITTerminalManager::CreateDynamicTerminal 方法(termmgr.h)

CreateDynamicTerminal 方法创建指定终端类、媒体类型和方向的动态终端。

语法

HRESULT CreateDynamicTerminal(
  [in]  IUnknown           *pOuterUnknown,
  [in]  IID                iidTerminalClass,
  [in]  DWORD              dwMediaType,
  [in]  TERMINAL_DIRECTION Direction,
  [in]  MSP_HANDLE         htAddress,
  [out] ITTerminal         **ppTerminal
);

参数

[in] pOuterUnknown

如果 MSP 将聚合终端对象,则设置为 MSP 对象的 IUnknown 接口指针。 通常,此值设置为 NULL

[in] iidTerminalClass

标识要创建的终端类的 GUID。

[in] dwMediaType

媒体类型的描述符。

[in] Direction

TERMINAL_DIRECTION 终端媒体流方向的描述符。

[in] htAddress

MSP 句柄。

[out] ppTerminal

指向新终端 ITTerminal 接口的指针。

返回值

此方法可以返回其中一个值。

价值 意义
S_OK
方法成功。
E_INVALIDARG
fMessageWaiting 参数无效。
E_POINTER
ppAddress 参数不是有效的指针。

言论

pTerminalClass选择值时,唯一可以使用的终端类 GUID 是对应于“动态”创建的终端的 GUID。 例如,从 TAPI3 当前定义的所有终端类中,只能将以下内容用于 CreateTerminal:CLSID_MediaStreamTerminal和CLSID_VideoWindowTerm。

此外,只能使用此地址支持的动态终端类。 应用程序可以使用 ITTerminalSupport::EnumerateDynamicTerminalClassesITTerminalSupport::get_DynamicTerminalClasses来发现这些值。

应用程序必须在两个步骤中获取 pTerminalClassBSTR:调用 stringFromIID 将 GUID 转换为 LPOLESTR,然后调用 SysAllocString,将 LPOLESTR 转换为 BSTR

应用程序必须使用 SysFreeString 来释放为 pTerminalClass 参数分配的内存。

要求

要求 价值
目标平台 窗户
标头 termmgr.h

另请参阅

ITTerminalManager

TERMINAL_DIRECTION

媒体类型