![]() |
А. DDE. Простейший пример обмена даннымиDate: 2015-10-07; view: 462. Практическая работа 40. DDE DDE Рассмотрим примеры использования Microsoft Access в роли сервера DDE для приложения-клиента, запрашивающего и принимающего даные по каналу связи DDE. Сеанс связи начинается с открытия канала связи; при этом используется функцияDDEInitiate, в аргументе которой перечисляются: имя приложения (база данных Access), имя файла базы данных, имя таблицы; пример: intChan1 = DDEInitiate("MSAccess", "C:\Winnt\Profiles\Administrator\dde6;TABLE dde1") После этого становится возможной передача данных в другое приложение по этому каналу. Для передачи требования на пересылку, например, текстовых данных из приложения-сервера по открытому каналу DDE используется функция DDERequest, в аргументе которой указывается номер канала связи и сформулирован запрос, пример: strResp1 = DDERequest(intChan1, "All"). После окончания передачи данных нужно вызвать в приложении-клиенте функцию DDETerminate для закрытия текущего канала обмена или функцию DDETerminateAll для закрытия всех каналов связи. Задание: записать в файл результат запроса к данным таблицы базы данных (Access). Порядок выполнения: 1. создать базу данных (здесь - dde6), таблицу (здесь - dde1), сделать запрос, закрыть приложение Access, 2. создать макрос в приложении Word, код макроса дан ниже, 3. стартовать макроc; в результате его выполнения стартует закрытое ранее приложение Access, 4. открыть файл dde61.txt (в редакторе Блокнот). Sub dde6()' макрос в приложении Word,Dim intChan1 As Integer ' канал связиDim strResp1 As Variant ' требование на запрос' открыть канал связиintChan1 = DDEInitiate("MSAccess",_"C:\Winnt\Profiles\Administrator\dde6;TABLE dde1")strResp1 = DDERequest(intChan1, "All") ' требование на запросDDETerminate intChan1 ' закрыть текущий канал связиOpen "dde61.txt" For Output As #1 ' открыть файл для записиWrite #1, strResp1 ' записать результат запросаClose #1 ' закрыть файлEnd SubСодержимое полученного файла dde61.txt - это результат запроса ("All"): вывести всeсодержимое таблицы базы данных,
|