powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Обмен сообщений между приложениями, синхронизация
17 сообщений из 17, страница 1 из 1
Обмен сообщений между приложениями, синхронизация
    #37715687
Фотография Капюшон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Форумчане, подскажите,

Есть два разных приложения (exe-файлы). (Речь об ОС Windows) Нужно, чтобы они передавали друг другу информацию.
Например, представим, что это два видеоплеера, проигрывающих видео с разных камер. Когда на одном (главном) плеере нажата кнопка “пауза”, другой должен об этом узнать и тоже остановиь показ. И т.п.
Как это в принципе сделать? Буду благодарен за любые наводки.
Знаю только про Microsoft Messaging Queue, возможно, остановлюсь на нем, но может есть способы лучше или проще?
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37716421
Фотография Капюшон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конкретизирую задачу. Первое приложение написано на С++ (unmanaged). Второе — C#.
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37717022
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Капюшон,

Я аналогичную задачу решал с помощью UDP multicast. Именно мультикаст. Не путать с просто UDP.
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37717111
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КапюшонКонкретизирую задачу. Первое приложение написано на С++ (unmanaged). Второе — C#.Это как раз фиолетово.
Механизмов вагон и маленькая тележка

Udp,tcp, именованые каналы, мэйлслоты, разделяемая память, COM, сообщения windows, DDE,файлы на диске в конце концов

Задача с плейрами -конкретная или просто для примера?
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37717390
Фотография Капюшон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача с плеерами — очень близка к конкретной.
Рассматриваю также Shared memory... хочется найти что-то относительно простое и быстрое...
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37718748
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37718791
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Капюшон,

а оно всё достачно простое.
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37718830
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилКапюшон,

а оно всё достачно простое.
Точно. Особенно, если не произносить вслух, а то язык можно сломать. :)
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37718877
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыли, кстати, что можно ещё в реестр гадить и СУБД использовать :)
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37719945
Фотография Капюшон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Реестр, СУБД, файлы здесь не подойдут, надо, чтобы сообщение достаточно быстро доходило...
UDP multicast, кстати, представляется хорошим способом...
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37720657
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КапюшонСУБД, файлы здесь не подойдут
это смотря как готовить. Если подписаться на изменения - задержки не будет.
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37720713
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилКапюшонСУБД, файлы здесь не подойдут
это смотря как готовить. Если подписаться на изменения - задержки не будет.
И какое событие, при изменении чего-то в базе, мы получаем на клиента?
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37720836
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge,

достаточно доходчивая презентация - http://www.oraclebi.ru/files/presentations/imelnikov/ChangeNotification.pdf
(Oracle - просто пример)
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37725998
Фотография Капюшон
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Форумчане,

А что по-вашему мнению больше подойдет для обмена сообщениями (командами) в данном случае: TCP или UDP?
Никаких данных пересылаться не будет, только короткие команды, которые, фактически, генерирует пользователь.
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37726099
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Капюшон,

UDP
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37728019
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Капюшон...обмена сообщениями (командами) в данном случае: TCP или UDP?...

если есть логика подтверждения прохождения команды - то целесообразней UDP. Если нет - то однозначно TCP. Это если Вам надо без ошибок команды передавать. Если пропадание команд рояли не играет - UDP.

удачи вам
(круглый)
...
Рейтинг: 0 / 0
Обмен сообщений между приложениями, синхронизация
    #37756155
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Капюшон:

КапюшонЕсть два разных приложения (exe-файлы). (Речь об ОС Windows) Нужно, чтобы они передавали друг другу информацию.
В Windows, самый простой способ меж-процессного взаимодействия -- это оконное сообщение WM_COPYDATA, оно позволяет пересылать данные произвольного размера. С него лучше и начать, и только если не устроит скорость работы, переходить на более сложные способы (например, socket-ы).

КапюшонНикаких данных пересылаться не будет, только короткие команды, которые, фактически, генерирует пользователь.
Если так, то возможно получится обойтись обычными оконными сообщениями (см. функции PostMessage, SendMessage), за раз можно передать 64 бита (в wParam/lParam). Причём даже не обязательно использовать функцию RegisterWindowMessage, достаточно просто определить константы вида WM_USER + my_message_id.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Обмен сообщений между приложениями, синхронизация
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]