DDE Dynamic Data Exchange - протокол динамического обмена данными - представляет собой коммуникационный протокол, разработанный компанией Microsoft для обмена данными между различными Windows-приложениями и их синхронизации. Для нормального функционирования DDE необходимо два участника – приложение, запрашивающее данные, и приложение, посылающее данные. Приложение, запрашивающее данные, называется клиентом. Приложение, посылающее данные, называется сервером.
Клиент DDE. В качестве приложения клиента может выступать любое приложение, позволяющее осуществлять DDE-запросы к DDE-серверу. 
Сервер DDE. Приложение, обеспечивающее возможности сервера, должно “уметь” принимать DDE сообщения и посылать данные в ответ на запросы приложений-клиентов. У одного DDE-сервера может быть один или несколько DDE-клиентов.
Сеанс DDE – активная непрерывная связь между клиентом и сервером.
Транзакция DDE – одиночный акт обмена данными в процессе сеанса.
 
В DDE используется трёхуровневая система адресации: service (зарегистрированный сервис, как правило, указывается приложение, предоставляющее серверные функции); topic (раздел данных, например, имя файла, или таблица базы данных); item (элемент данных, подлежащий передаче).
 
Протокол DDE подразумевает клиент-серверную архитектуру. Это значит, что одно их приложений выступает в качестве сервера, а второе – клиента. В нашем случае сервером выступает приложение MS Excel, а приложения .NET являются для него клиентами. Обмен данными между приложениями происходит посредством транзакций. Управляет всем процессом специальное расширение ОС Windows - динамическая библиотека DDEML.
По протоколу DDE, сервер в первую очередь должен зарегистрировать себя в библиотеке DDEML. После этого он регистрирует предоставляемые сервисы.
Клиентское приложение также сначала регистрирует себя в библиотеке DDEML. После этого клиентское приложение создает канал связи с сервером.
Протокол DDE поддерживает три вида обмена данными между клиентом и сервером:
По явному запросу
«Теплый канал»
«Горячий канал»
 
 

Нет прав для добавления комментария