Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.47 MB
Время: 0.011 c
3-85788
werr
2002-12-05 17:59
2002.12.26
Поиск неотсортированных записей


3-85817
Romkin
2002-12-06 11:17
2002.12.26
attempted update of read-only column


3-85861
KA_
2002-12-05 11:15
2002.12.26
Ошибка Interbase-сервера


14-86137
msts
2002-12-06 10:33
2002.12.26
Парсер PAS/DPR/DPK+-DFM


1-86030
SemFLY
2002-12-16 08:21
2002.12.26
Delphi 7...проблемы... :-(