Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Передача данных между приложениями в Windows [D7, WinXP]


WolandUSSR ©   (2003-12-28 21:26:00) 

Подскажите пожалуйста, как в Windows организовать передачу данных между приложениями: "один - ко - многим"? DDE и отображение файлов в память не подходят. Самый приемлемый вариант - WinAPI.


int64   (2003-12-31 10:44:00) [1]

Почти все реализации сабжа уже прозвучали.
Позволь вопрос: что значит "не через задницу"?

И как вариант ещё одного "изврата" могу предложить СОМ-интерфейсы. А точнее захватывать СОМ/СОМ+ события из твоего приложения через connection points (это тоже задница, только у интерфейса).
Вот здесь готовый пример:
http://www.techvanguards.com/products/eventsinkimp/


Anatoly Podgoretsky   (2003-12-30 09:09:00) [2]

А почему бы тогда и не сделать сервер?


Digitman   (2003-12-30 08:52:00) [3]


> Требуется организовать что-то вроде локального UDP сервера
> для передачи массивов данных от одного приложения ко многим


ну так как раз лучше MMF вряд ли что-либо можно придумать для этой задачи


Fay   (2003-12-29 23:17:00) [4]

APC устроит?


Бином Ньютоныч   (2003-12-29 21:42:00) [5]

>file mapping - это фактически обработчик тех же сообщений.

Это как? То бишь в каком смысле?


WolandUSSR   (2003-12-29 20:47:00) [6]

Короче, хочется сделать по человечески, а не через задницу :))


WolandUSSR   (2003-12-29 20:45:00) [7]

Спасибо, конечно, за советы. Но вы кажется не проняли. Требуется организовать что-то вроде локального UDP сервера для передачи массивов данных от одного приложения ко многим. Messages тут явно не подходят. file mapping - это фактически обработчик тех же сообщений. Ну а передача данных через файл в активном режиме -это уж полный изврат, как и локальная передача через UDP. Вот и вопрос, а как ещё можно?


Digitman   (2003-12-29 08:58:00) [8]

на худой конец и механизмы Named/UnnamedPipes и/или MailSlots сойдут


Digitman   (2003-12-29 08:56:00) [9]


> отображение файлов в память не подходят


это почему же ?


> Самый приемлемый вариант - WinAPI


это что, "механизм" какой-то новый ?)

p.s.

если так уж претит использование DDE и MMF, и обмен должен происходить между GUI-приложениями в контексте одного и того же дисктопа, то вполне может подойти и SendMessage(HWND_BROADCAST, ...) ... все зависит от структуры данных, подлежащих обмену


miek   (2003-12-28 23:29:00) [10]

Проще всего создать именованный объект (file mapping) в виде структуры с полями (какими угодно) и пусть качают оттуда все, кому надо, когда и сколько надо.


Yuri Btr   (2003-12-28 23:07:00) [11]

Messages ?
(WM_USER и т.д.)


Наверх

Титульная страница Поиск, карта сайта Написать письмо