| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Java + Delphi +TraceMode |
| Автор: GWTMain 14.4.2010, 13:03 |
| Извеняюсь создам топик тут, ненашел подходящего! Как можно заставить общаться 3 приложения(на java delphi and tracemode) нужно просто пересылать ключ-значение. К примеру так посылаю в приложение на delphi или tracemode строку close, то оно закроется. DDE и ActiveX не предлогать. Тут еще что главное приложение на java(скажем сервер) рассылает эти соощения, а вот (delphi или tracemode(клиенты)) их ловит и этих клиентов может быть много, и их еше нужно различать. Пока тока в голове крутится по tcp/ip гнать и все, а различать по номерам порта, но это кривой вариант. |
| Автор: MaxPayneC 15.4.2010, 08:30 |
| Stdin/stdout? |
| Автор: dobrolub 15.4.2010, 08:43 |
| >Пока тока в голове крутится по tcp/ip гнать и все, а различать по номерам порта, но это кривой вариант. Хороший, если не единственный, вариан, раз клиент-сервер. |
| Автор: batigoal 15.4.2010, 08:52 |
| Гнать инфу через TCP-сокеты. Для различения клиентов реализовать свой протокольчик, например, в plain text: client_name|command|parameters |
| Автор: casey 15.4.2010, 09:16 |
| Тут самое слабое звено это трейсмоуд. Каким образом ты собрался трейс моудом слушать сокет? Проблема в том что к трейс моуду можно писать длл-ки, функции которых можно (с ограничениями) вызвать из трейсмоуда. Но по-моему (где-то встречпал) в них не может быть длительных циклов ожидания сообщений. Добавлено через 3 минуты и 35 секунд Тут самое слабое звено это трейсмоуд. Каким образом ты собрался трейс моудом слушать сокет? Проблема в том что к трейс моуду можно писать длл-ки, функции которых можно (с ограничениями) вызвать из трейсмоуда. Но по-моему (где-то встречпал) в них не может быть длительных циклов ожидания сообщений. |
| Автор: batigoal 15.4.2010, 15:43 | ||
Так сервер ведь один. Java-приложение запускает серверный сокет на известном порту, а клинеты открывают сокеты с произвольных портов. То есть при подключении клиент сам инициирует установление соединения на известный порт, ну а потом уже связь может быть двунаправленной. |
| Автор: GWTMain 16.4.2010, 07:09 | ||
Тут нету клиентов и серверов, есть одно приложение(на Java) оно запускает другие приложения и должно с ними общаться, ут еще есть плюсик может поможет, эти приложения находятся на одном компе=) Может ыть можно и без сокетов обойтись! |
| Автор: batigoal 16.4.2010, 10:06 |
| GWTMain, если есть сокеты, значит, есть и сервер. Слушающий сокет - серверный, подключающийся - клиентский. Если java-приложение у тебя одно, то и слушающий сокет будет один. Ну мы использовали для решения этой задачи http://www.freedesktop.org/wiki/Software/dbus, но сокеты, имхо, проще и стандартней. Да он и сам работает поверх сокетов, по-моему. |
| Автор: GWTMain 16.4.2010, 11:03 | ||
Блин их может и не быть, это я просто так думал использовать их, это не означает, что так надо. |