Инициируют обмен данными между Visual FoxPro и другими приложениями на базе Microsoft Windows.
Комментарии:
Действуют в Visual FoxPro и FoxPro для Windows.
Visual FoxPro может выступать как в роли сервера, так и в роли клиента, посылая данные в другие приложения на базе Windows или получая из них информацию.
В приложениях, поддерживающих средство DDE (динамический обмен данными), приняты следующие соглашения об именах:
Имя | Описание |
---|---|
Имя службы | Имя, на которое отзывается сервер, когда клиент пытается к нему обратиться. Сервер может поддерживать множество имен служб. |
Имя темы | Имя, определяющее логический набор данных. В приложениях на базе файлов именами тем обычно являются имена файлов. В других приложениях имена тем зависят от конкретного приложения. Чтобы получить доступ к серверу, клиент должен кроме имени службы сервера задать имя темы. |
Имя элемента | Имя, определяющее элемент данных, который сервер может передать клиенту, запросившему информацию. |
Чтобы запросить данные из другого приложения, составьте программу Visual FoxPro, которая устанавливает систему Visual FoxPro в качестве клиента. Далее приводится краткое описание процедуры создания простой программы Visual FoxPro, запрашивающей данные из другого приложения.
Установите связь с приложением-сервером, используя функцию DDEInitiate( ).
Если связь успешно установлена, запросите данные из приложения-сервера с помощью функции DDERequest( ). Данную функцию можно выдавать повторно, чтобы получить все нужные данные.
После того как данные получены, выдайте функцию DDETerminate( ), которая прекращает связь с приложением-сервером, чтобы освободить системные ресурсы.
Указанные выше функции устанавливают "холодную" связь. Такая связь устанавливается, если клиент сам инициирует все операции передачи данных между приложениями. О других типах связей см. описание функции DDEAdvise( ).
Далее приводится краткое описание программы, устанавливающей систему Visual FoxPro в качестве сервера.
С помощью функции DDESetService( ) создайте службу и задайте тип службы.
С помощью функции DDESetTopic( ) создайте тему службы и задайте процедуру, которая выполнится, когда эта тема будет указана в запросе клиента.
Создайте процедуру, задаваемую в DDESetTopic( ), которая принимает передаваемые ей параметры.
В процедуре выполните обработку запроса и, если нужно, возвратите запрошенные данные клиенту.
Следует отметить, что эти функции DDE не отвечают установленным соглашениям о функциях Visual FoxPro в следующих аспектах.
Первые четыре символа имен этих функций не являются уникальными.
Имена функций состоят более чем из 10 символов и не могут быть сокращены:
Функция DDE | Описание |
---|---|
DDEAbortTrans( ) | Прекращает асинхронную транзакцию DDE. |
DDEAdvise( ) | Создает для DDE связь с уведомлением или автоматическую связь. |
DDEEnabled( ) | Включает или отключает обработку средствами DDE или возвращает статус обработки DDE. |
DDEExecute( ) | Используя DDE, посылает команду в другое приложение. |
DDEInitiate( ) | Устанавливает канал DDE между Visual FoxPro и другим приложением на базе Windows. |
DDELastError( ) | Возвращает номер ошибки для последней функции DDE. |
DDEPoke( ) | Передает данные между приложением-клиентом и приложением-сервером посредством связи DDE. |
DDERequest( ) | Запрашивает данные из приложения-сервера по связи DDE. |
DDESetOption( ) | Изменяет или возвращает установки DDE. |
DDESetService( ) | Создает, освобождает или модифицирует имена и установки служб в Visual FoxPro. |
DDESetTopic( ) | В ходе связи DDE создает или освобождает имя темы, используя имя службы. |
DDETerminate( ) | Закрывает канал DDE, установленный функцией DDEInitiate( ). |