|
|
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Форумчане, подскажите, Есть два разных приложения (exe-файлы). (Речь об ОС Windows) Нужно, чтобы они передавали друг другу информацию. Например, представим, что это два видеоплеера, проигрывающих видео с разных камер. Когда на одном (главном) плеере нажата кнопка “пауза”, другой должен об этом узнать и тоже остановиь показ. И т.п. Как это в принципе сделать? Буду благодарен за любые наводки. Знаю только про Microsoft Messaging Queue, возможно, остановлюсь на нем, но может есть способы лучше или проще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2012, 13:45 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Конкретизирую задачу. Первое приложение написано на С++ (unmanaged). Второе — C#. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2012, 18:12 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Капюшон, Я аналогичную задачу решал с помощью UDP multicast. Именно мультикаст. Не путать с просто UDP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 00:56 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
КапюшонКонкретизирую задачу. Первое приложение написано на С++ (unmanaged). Второе — C#.Это как раз фиолетово. Механизмов вагон и маленькая тележка Udp,tcp, именованые каналы, мэйлслоты, разделяемая память, COM, сообщения windows, DDE,файлы на диске в конце концов Задача с плейрами -конкретная или просто для примера? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 06:25 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Задача с плеерами — очень близка к конкретной. Рассматриваю также Shared memory... хочется найти что-то относительно простое и быстрое... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 11:03 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 20:24 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Капюшон, а оно всё достачно простое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:06 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
ИзопропилКапюшон, а оно всё достачно простое. Точно. Особенно, если не произносить вслух, а то язык можно сломать. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:47 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
забыли, кстати, что можно ещё в реестр гадить и СУБД использовать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 22:27 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Реестр, СУБД, файлы здесь не подойдут, надо, чтобы сообщение достаточно быстро доходило... UDP multicast, кстати, представляется хорошим способом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2012, 13:16 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
КапюшонСУБД, файлы здесь не подойдут это смотря как готовить. Если подписаться на изменения - задержки не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2012, 19:04 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
ИзопропилКапюшонСУБД, файлы здесь не подойдут это смотря как готовить. Если подписаться на изменения - задержки не будет. И какое событие, при изменении чего-то в базе, мы получаем на клиента? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2012, 19:41 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
ShSerge, достаточно доходчивая презентация - http://www.oraclebi.ru/files/presentations/imelnikov/ChangeNotification.pdf (Oracle - просто пример) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2012, 21:30 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Форумчане, А что по-вашему мнению больше подойдет для обмена сообщениями (командами) в данном случае: TCP или UDP? Никаких данных пересылаться не будет, только короткие команды, которые, фактически, генерирует пользователь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2012, 18:31 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Капюшон, UDP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2012, 19:22 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
Капюшон...обмена сообщениями (командами) в данном случае: TCP или UDP?... если есть логика подтверждения прохождения команды - то целесообразней UDP. Если нет - то однозначно TCP. Это если Вам надо без ошибок команды передавать. Если пропадание команд рояли не играет - UDP. удачи вам (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2012, 17:39 |
|
||
|
Обмен сообщений между приложениями, синхронизация
|
|||
|---|---|---|---|
|
#18+
2 Капюшон: КапюшонЕсть два разных приложения (exe-файлы). (Речь об ОС Windows) Нужно, чтобы они передавали друг другу информацию. В Windows, самый простой способ меж-процессного взаимодействия -- это оконное сообщение WM_COPYDATA, оно позволяет пересылать данные произвольного размера. С него лучше и начать, и только если не устроит скорость работы, переходить на более сложные способы (например, socket-ы). КапюшонНикаких данных пересылаться не будет, только короткие команды, которые, фактически, генерирует пользователь. Если так, то возможно получится обойтись обычными оконными сообщениями (см. функции PostMessage, SendMessage), за раз можно передать 64 бита (в wParam/lParam). Причём даже не обязательно использовать функцию RegisterWindowMessage, достаточно просто определить константы вида WM_USER + my_message_id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2012, 21:37 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37726099&tid=1342309]: |
0ms |
get settings: |
5ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
154ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 452ms |

| 0 / 0 |
