Текущий архив: 2002.12.26;
Скачать: CL | DM;
ВнизОбмен данными между двумя приложениями Найти похожие ветки
← →
Анатолий (2002-12-15 19:05) [0]Существует проблема:
надо организвать обмен данными между двумя запущенными программами, немогу выбрать механизм передачи данных, sendmessage и буфер обмена отпадают, Если делать через OLE, то надо регистрировать одну из программ, чтобы получить CLSID, как поступить ? сейчас увидел мессагу в форуме от 2000 года, в ней что то о совместной памяти двух приложений, Memory mapped files по-моему, если кто нибудь делал что то подобное или представляет себе процесс шлите всё на почту !!!!
очень надо !
← →
Sha (2002-12-15 19:47) [1]А самому поискать трудно?
← →
Юрий Зотов (2002-12-15 20:32) [2]1. Почему отпадают SendMessage/PostMessage/PostThreadMessage и им подобные? Если из-за размера передаваемой информации, то обратите внимание на WM_COPYDATA. Это, наверное, самый простой способ.
2. Memory mapped file - немного сложнее, но тоже решает задачу. Сделайте поиск слова CreateFileMapping или посмотрите простой пример здесь:
http://www.delphikingdom.com/helloworld/samples_win.htm
(пример № 1): http://delphi.mtu-net.ru/zip/cunnings.zip
← →
Оливейра (2002-12-15 21:24) [3]В принципе, если вы знакомы с OLE...
см. GlobalAlloc, CreateStreamOnHGlobal, GetHGlobalFromStream и интерфейс IStream.
Сам полученный HGlobal можно передавать посредством SendMessage.
← →
int64 (2002-12-15 22:07) [4]Ещё можно добавить DDE, pipes, сокеты.
Примеры намылил (тамже WM_CopyData и MMF).
А также порекомендую интересный пример связи с подключениями к событиям СОМ через IConnectionPointContainer:
http://www.techvanguards.com/files/DelphiSinkDemo.zip
Страницы: 1 вся ветка
Текущий архив: 2002.12.26;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.007 c