Реферат: Протоколы и стандарты объектно-ориентированного программирования
одно и тоже сервер-приложение несколько раз.
Клиент может использовать функции DdeQueryNextServer и
DdeQueryConvInfo для того, чтобы понять, какой сервер находится в
списке, полученный при вызове функции DdeConnectList.
DdeQueryNextServer возвращает идентификатор диалога для следующе-
го сервера, находящегося в списке; DdeQueryConvInfo заполняет
структуру CONVINFO информацией о диалоге.
Клиент может сохранить полученные идентификаторы диалогов и
отказаться от просмотра оставшихся серверов в списке.
Приведем пример использования функции DdeConnectList для
установления диалога со всеми серверами, которые поддерживают имя
'system topic', затем будем использовать функции DdeQueryConvInfo
и DdeQueryNextServer для получения их идентификаторов service
имен, одновременно не забывая сохранить последние во временном
буфере.
HCONVLIST hconvList; // Список диалогов
DWORD idInst; // Дискриптор приложения
HSZ hszSystem; // System topic
HCONV hconv = NULL; // Идентификатор диалога
CONVINFO ci; // Информация о диалоге
UINT cConv = 0; // Количество идентификаторов
диалогов
HSZ *pHsz, *aHsz; // Указатель на идентификатор
строки
// Присоединяемся ко всем серверам, поддерживающим
// System topic.
hconvList = DdeConnectList(idInst, NULL, hszSystem,
NULL, NULL);
// Вычисляем количество серверов в списке.