Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Сообщения между приложениями!!!


Автор: Rodman 27.7.2006, 22:17
Добрый день. 

Подскажите пожалуйста каким способом можно передать определенный текст типа: "User 1, Enter", другому приложению, которое это сообщение обработает?!?!?!

Мне необходим какой-то не визуальный метод...

короче говоря - Отправить и получить с помощью не визуальных компонентов...

 smile  smile  smile  smile  smile 

Спасибо... 

Автор: Демо 27.7.2006, 22:40
см. WM_COPYDATA 

Автор: Snowy 28.7.2006, 09:14
По сети или на одной машине?
По сети - поиск по TCPClient и TCPServer
На одном компьютере - поиск по WM_COPYDATA в разделе Delphi WinAPI 

Автор: vood 29.7.2006, 06:52
Лучше воспользуйся реестром для передачи данных (на одном компе) 

Автор: Snowy 29.7.2006, 07:52
vood, это ты так пошутил?
Ты еще сказал бы "в рар запакуй"... 

Автор: BUGOR 29.7.2006, 08:14
Если данные большие(больше 255) и их нужно хранить в памяти, то лучшим вариантом являются именованные MemoryMappedFiles, очень удобная штука и может работать не только между двумя приложениями, но и больше и опять же даже ничего передавать не надо, если меняешь часток на одном конце, то на другом он тоже меняется. 

Автор: Демо 29.7.2006, 12:56
Цитата(BUGOR @  29.7.2006,  08:14 Найти цитируемый пост)
может работать не только между двумя приложениями


? 

Автор: BUGOR 29.7.2006, 13:23
Демо, одно приложение создаёт именованный участок памяти, а другие могут его открыть по имени и читать/писать из него, причём любое изменение этого участка опционально может отражается во всех или ни в одном приложении. 

Автор: Демо 29.7.2006, 13:52
Цитата(BUGOR @  29.7.2006,  13:23 Найти цитируемый пост)
Демо, одно приложение создаёт именованный участок памяти, а другие могут его открыть по имени и читать/писать из него, причём любое изменение этого участка опционально может отражается во всех или ни в одном приложении. 


Поясни выражение - "не только между двумя приложениями". 

Автор: BUGOR 29.7.2006, 14:11
Демо, что тут пояснять не понимаю?  

Автор: Демо 29.7.2006, 14:38
Цитата(BUGOR @  29.7.2006,  14:11 Найти цитируемый пост)
Демо, что тут пояснять не понимаю?


Ну тогда я делаю вывод, что имеешь ввиду - "не только между двумя приложениями, но и между двумя компюьтерами"?

Ну тогда ты не прав. Это невозможно. 

Автор: Fighter 29.7.2006, 14:49
Если на одной машине - COM, если для сети - DCOM. 

Автор: Dmi3 29.7.2006, 15:25
Демо, Он наверн говорит о том, что и для трех, четырех, пяти и тд приложений будет работать. 

Автор: Rodman 1.8.2006, 15:29
Ребята... Спасибо конечно за такое количество советов... но Вы только не подеритесь...


Я пока сделал с помошью WM_COPYDATA... пока меня устраивает... 



СПАСИБО!!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)