Поделиться через


сообщение WM_DDE_INITIATE

Клиентское приложение динамического обмена данными (DDE) отправляет WM_DDE_INITIATE сообщение, чтобы инициировать диалог с серверным приложением, отвечающим на указанные имена приложений и разделов. После получения этого сообщения все серверные приложения с именами, которые соответствуют указанному приложению и поддерживают указанный раздел, должны подтвердить его. (Дополнительные сведения см. в сообщении WM_DDE_ACK .)

#define WM_DDE_INITIATE        0x03E0

Параметры

wParam

Дескриптор клиентского окна, отправляющий сообщение.

lParam

Слово низкого порядка содержит атом, определяющий приложение, с которым запрашивается беседа. Имя приложения не может содержать косую черту (/) или обратную косую черту (\). Эти символы зарезервированы для реализации сети. Если этот параметр имеет значение NULL, запрашивается беседа со всеми приложениями.

Слово высокого порядка содержит атом, определяющий тему, для которой запрашивается беседа. Если раздел имеет значение NULL, запрашиваются беседы для всех доступных тем.

Комментарии

Если слово lParam в нижнем порядке имеет значение NULL, любое серверное приложение может ответить. Если слово lParam в высоком порядке имеет значение NULL, то любой раздел является допустимым. При получении запроса WM_DDE_INITIATE со словом высокого порядка параметра lParam , имеющим значение NULL, сервер должен отправить WM_DDE_ACK сообщение для каждого из поддерживаемых разделов.

Отправка

Клиент передает сообщение во все окна верхнего уровня, задав первому параметру SendMessageзначение HWND_BROADCAST.

Если клиентское приложение уже получило дескриптор окна нужного сервера, оно может отправить WM_DDE_INITIATE непосредственно в окно сервера, передав дескриптор окна сервера в качестве первого параметра SendMessage.

Клиентское приложение выделяет атомы, вызывая функцию GlobalAddAtom .

При возврате SendMessage клиентское приложение должно удалить атомы.

Получение

Чтобы завершить инициацию диалога, серверное приложение должно отвечать одним или несколькими WM_DDE_ACK сообщений, где каждое сообщение относится к отдельной теме. При отправке WM_DDE_ACK сообщения сервер должен создать новые атомы; он не должен повторно использовать атомы, отправленные с WM_DDE_INITIATE.

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Dde.h (включая Windows.h)

См. также раздел

Справочные материалы

GlobalAddAtom

PostMessage

SendMessage

WM_DDE_ACK

Основные понятия

Сведения о динамическом обмене данными