DdeConnectList 函数 (ddeml.h)

与支持指定服务名称和主题名称对的所有服务器应用程序建立会话。 应用程序还可以使用此函数通过向现有会话句柄传递函数来获取会话句柄的列表。 动态数据交换管理库从会话列表中删除任何已终止会话的句柄。 生成的会话列表包含支持指定服务名称和主题名称的所有当前已建立的会话的句柄。

语法

HCONVLIST DdeConnectList(
  [in]           DWORD        idInst,
  [in]           HSZ          hszService,
  [in]           HSZ          hszTopic,
  [in]           HCONVLIST    hConvList,
  [in, optional] PCONVCONTEXT pCC
);

参数

[in] idInst

类型:DWORD

由上一次调用 DdeInitialize 函数获取的应用程序实例标识符。

[in] hszService

类型: HSZ

字符串的句柄,指定要与之建立会话的服务器应用程序的服务名称。 如果此参数为 0L,系统会尝试与支持指定主题名称的所有可用服务器建立会话。

[in] hszTopic

类型: HSZ

字符串的句柄,指定要建立会话的主题的名称。 此句柄必须由之前对 DdeCreateStringHandle 函数的调用创建。 如果此参数为 0L,系统会尝试在所选服务器 (或) 服务器支持的所有主题上建立对话。

[in] hConvList

类型: HCONVLIST

要枚举的会话列表的句柄。 如果要建立新的会话列表,此参数应为 0L。

[in, optional] pCC

类型: PCONVCONTEXT

指向包含会话上下文信息的 CONVCONTEXT 结构的指针。 如果此参数为 NULL,则服务器会在XTYP_CONNECTXTYP_WILDCONNECT事务期间接收默认 CONVCONTEXT 结构。

返回值

类型: HCONVLIST

如果函数成功,则返回值是新会话列表的句柄。

如果函数失败,则返回值为 0L。 旧会话列表的句柄不再有效。

DdeGetLastError 函数可用于获取错误代码,该错误代码可以是以下值之一:

注解

应用程序必须释放 DdeConnectList 函数返回的会话列表句柄,而不管列表中是否有任何会话句柄处于活动状态。 若要释放句柄,应用程序可以调用 DdeDisconnectList

默认 CONVCONTEXT 结构的所有成员都设置为零,但 cb(指定结构的大小)和 iCodePage(指定 CP_WINANSI (默认代码页) 或 CP_WINUNICODE,具体取决于客户端应用程序是否调用 了 DdeInitialize 函数的 ANSI 或 Unicode 版本。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 ddeml.h (包括 Windows.h)
Library User32.lib
DLL User32.dll

另请参阅

CONVCONTEXT

概念性

DdeConnect

DdeCreateStringHandle

DdeDisconnect

DdeDisconnectList

DdeInitialize

DdeQueryNextServer

动态数据交换管理库

引用