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

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

Передача данных между приложениями.


Grover ©   (2007-03-05 09:31:00) 

Я пишу две програмки на Delphi.
В итоге получится два приложения (exe). Эти приложения запускаются одновременно и должны передавать друг другу данные.
Если осуществлять передачу через жесткий диск, то это занимает много времени (т.к. большой поток данных).
Подскажите как передавать данные между различными приложениями?


Grover   (2007-03-05 11:22:00) [1]

Прошу прощения...
Я не учел возможности Blitz... Кроме файлов он не чего не может...
Спасибо всем за помощь!


Elen   (2007-03-05 10:57:00) [2]


> Осталось только передать данные от проги на Delphi к проге
> на Blitz 3D и обратно.

А ты знаеш как Blitz передает данные?


Grover   (2007-03-05 10:46:00) [3]

Всем огромное спасибо за помощь.

Опишу полностью ситуацию:
Я занялся написанием простенькой сетевой игры на языке Blitz 3D (простенький 3D движок). Сетевые возможности Blitz 3D меня не устраивают. Я хочу написать приложение на Delphi, которое будет выступать в роли сервера. Эта программа будет отвечать за отправку и прием сообщений всех клиентов. За обработку информации должна отвечать прога, написанная на Blitz3D (прощет столкновений и т.п.).
Осталось только передать данные от проги на Delphi к проге на Blitz 3D и обратно.

Может всетаки осуществлять передачу через файл???


Сергей М.   (2007-03-05 09:53:00) [4]


> Grover ©   (05.03.07 09:38) [2]


> DDE - базы данных?


DDE = Dynamic Data Exchange


> Сеть? Стоит задуматься.


Не стоит.
Это будет как из пушки по воробьям, если оба приложения работают на одной и той же машине.

Самый простой вариант - messages.
Не менее простой, но специально"заточенный" для интерпроцессных коммуникаций вариант - NamedPipes


Leonid Troyanovsky   (2007-03-05 09:51:00) [5]


> Grover ©   (05.03.07 09:31)  

> В итоге получится два приложения (exe). Эти приложения запускаются
> одновременно и должны передавать друг другу данные.

Во многом это зависит от того, что понимается под одновременностью.
Кроме того, важно знать консольные это приложения или GUI.

--
Regards, LVT.


Leonid Troyanovsky   (2007-03-05 09:49:00) [6]


> Grover ©   (05.03.07 09:38) [2]

> Map Files -это я не знаю...
Memory mapped files - файлы, проецируемые в память.
Стоит изучить: CreateFileMapping, MapViewOfFile & etc

> Messages - это тоже темный лес...
Стоит изучить: SendMessage WM_COPYDATA

> Sockets - Сеть? Стоит задуматься.

Можно также задуматься о Named/anonymous pipes

> DDE - базы данных? или я ошибаюсь...

Ошибаешься. Но, можно и не изучать.

--
Regards, LVT


Grover   (2007-03-05 09:38:00) [7]

Map Files -это я не знаю...

Messages - это тоже темный лес...

Sockets - Сеть? Стоит задуматься.
DDE - базы данных? или я ошибаюсь...


Elen   (2007-03-05 09:34:00) [8]


> Эти приложения запускаются одновременно

Разве?


> Подскажите как передавать данные между различными приложениями?

Map Files, Messages, Sockets, DDE. Выбирай любое.


Наверх

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