Динамический обмен данными - Dynamic Data Exchange

В вычислении , динамический обмен данных ( DDE ) представляет собой технология для межпроцессного взаимодействия , используемого в ранних версиях Microsoft Windows и OS / 2 . DDE позволяет программам манипулировать объектами, предоставленными другими программами, и реагировать на действия пользователя, влияющие на эти объекты. DDE был частично заменен Object Linking and Embedding (OLE) и в настоящее время поддерживается в системах Windows только для обеспечения обратной совместимости .

История и архитектура

Динамический обмен данными был впервые представлен в 1987 году с выпуском Windows 2.0 в качестве метода межпроцессного взаимодействия, чтобы одна программа могла взаимодействовать с другой программой или управлять ею, что-то вроде RPC (Remote Procedure Call) от Sun. В то время единственным способом связи между операционной системой и клиентскими приложениями был «Уровень обмена сообщениями Windows». DDE расширил этот протокол, чтобы разрешить одноранговую связь между клиентскими приложениями посредством широковещательной рассылки сообщений.

Поскольку DDE работает через широковещательную рассылку сообщений, он уязвим для любого кода управления окнами, который не перекачивает сообщения . Эта проблема не рассматривалась при разработке DDE, потому что DDE предшествует упреждающей многозадачности .

Более того, любой код, управляющий дескриптором окна, может отвечать на широковещательную рассылку DDE; инициатор DDE должен различать ожидаемые и неожиданные ответы. Собеседники DDE обычно выражают, какую информацию они ищут, в терминах иерархических строковых ключей. Например, ячейка в Microsoft Excel была известна DDE по имени «приложения». Каждое приложение может дополнительно систематизировать информацию по группам, известным как «темы», и каждая тема может обслуживать отдельные фрагменты данных как «элемент». Например, если пользователь хочет получить значение из Microsoft Excel, которое содержится в электронной таблице с именем «Book1.xls» в ячейке в первой строке и первом столбце, приложением будет «Excel», тема «Book1». xls »и элемент« r1c1 ». Внутренние изменения в ячейке из-за действий Excel затем будут сигнализироваться (в обратном порядке) вызывающему приложению через дополнительные широковещательные сообщения.

Отношение к современным технологиям автоматизации

Обычно DDE используется в специально разработанных приложениях для управления стандартным программным обеспечением. Например, собственное пользовательское приложение может использовать DDE, чтобы открыть электронную таблицу Microsoft Excel и заполнить ее данными, открыв диалог DDE с Excel и отправив ему команды DDE. Эта функция в основном была заменена набором технологий компонентной объектной модели . Microsoft не использовала DDE для внутренних целей с момента выпуска Windows 95 . Например, Excel теперь предоставляет обширную объектную модель OLE Automation , которая является рекомендуемым методом взаимодействия с Excel. Однако этот метод все еще используется, особенно для распространения финансовых данных. Поскольку DDE не требует большего количества компонентов операционной системы, чем обычная программа с графическим интерфейсом Windows , это также [малоиспользуемая] альтернатива для программ, стремящихся минимизировать свои зависимости .

NetDDE

Wonderware разработала расширение для DDE под названием NetDDE, которое можно использовать для инициирования и поддержания сетевых подключений, необходимых для разговоров по DDE между приложениями с поддержкой DDE, работающими на разных компьютерах в сети, и прозрачного обмена данными. Диалог DDE - это взаимодействие между клиентскими и серверными приложениями. NetDDE можно использовать вместе с DDE и библиотекой управления DDE (DDEML) в приложениях.

/Windows/SYSTEM32
    DDESHARE.EXE (DDE Share Manager)
    NDDEAPIR.EXE (NDDEAPI Server Side)
    NDDENB32.DLL (Network DDE NetBIOS Interface)
    NETDDE.EXE (Network DDE - DDE Communication)

Файлы библиотеки NetDDE

Microsoft лицензировала базовую ( только для NetBIOS Frames ) версию продукта для включения в различные версии Windows от Windows для рабочих групп до Windows XP . Вдобавок Wonderware также продала своим клиентам улучшенную версию NetDDE, которая включала поддержку TCP / IP . Технология широко используется в области SCADA . Основными приложениями Windows, использующими NetDDE, являются Clipbook Viewer , WinChat и Microsoft Hearts .

NetDDE все еще входил в состав Windows Server 2003 и Windows XP Service Pack 2, хотя по умолчанию он был отключен. В Windows Vista он был полностью удален . Однако это не помешает установке и работе существующих версий NetDDE в более поздних версиях Windows.

Смотрите также

Рекомендации

Источники

  • Чарльз Петцольд . «Динамический обмен данными» в программировании для Windows 95 . Microsoft Press.

внешние ссылки