Russian Qt Forum
Ноябрь 25, 2024, 06:52
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Чем заменить COM-server
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Чем заменить COM-server (Прочитано 4056 раз)
Alex_C
Гость
Чем заменить COM-server
«
:
Август 14, 2012, 15:29 »
Есть программа под винду для считывания телеметрии с приборов. Написана на Дельфи. Работает она как COM-server. Все просто и понятно.
Есть необходимость сделать ее кросс-платформенной. Как проще сделать? Сделать ее как dll - но вот не уверен, что я смогу реализовать все, что есть в COM-server'е через интерфейс dll. А есть ли какие другие решения?
Записан
Bepec
Гость
Re: Чем заменить COM-server
«
Ответ #1 :
Август 14, 2012, 15:44 »
Как ком-сервер. В смысле она общается с приборами по COM порту и выводит(выводит ли?) телеметрию и сохраняет её.
Тогда всё просто - достаточно будет переписать её на Qt. Насчёт кроссплатформенности Delfi у меня большиииие сомнения
PS работа с комом - QtSerialPort(как то так). На форуме лежит темка про него. Разработчик прилагается. Работает великолепно
Записан
Странник
Гость
Re: Чем заменить COM-server
«
Ответ #2 :
Август 14, 2012, 15:45 »
недавно на форуме мелькала информация о Qt Service Framework, можете поинтересоваться. но доступен он будет в Qt 5.
а с dll в чем затык?
p.s.
что касается кроссплатформенности Delphi - Kylix сдох? он, кстати, на Qt был основан, помнится = )
Записан
Alex_C
Гость
Re: Чем заменить COM-server
«
Ответ #3 :
Август 14, 2012, 16:04 »
Я тут наверное немного неправильно выразился - программу с дельфи переписать на Qt конечно же
. На Qt с ком-портами уже разобрался - тут все ок! Сама программа (что работает с ус-вами) уже переписана на Qt. Но естественно это пробный вариант - теперь необходимо организовать интерфейс этой программы для взаимодействия с другими программами. Т.е. программа получила данные с ус-ва - передала их другой программе. В винде это очень удобно делается с помощью технологии COM. Но естественно для кросс-платформенности она не подойдет. Вот собственно и озадачился - а что использовать? При этом под виндой эта программа должна без проблем взаимодействовать с программами, написанными не только на Qt - а и на том же дельфи, к примеру.
Записан
Странник
Гость
Re: Чем заменить COM-server
«
Ответ #4 :
Август 14, 2012, 16:47 »
Цитата: Alex_C от Август 14, 2012, 16:04
Я тут наверное немного неправильно выразился - программу с дельфи переписать на Qt конечно же
. На Qt с ком-портами уже разобрался - тут все ок! Сама программа (что работает с ус-вами) уже переписана на Qt. Но естественно это пробный вариант - теперь необходимо организовать интерфейс этой программы для взаимодействия с другими программами. Т.е. программа получила данные с ус-ва - передала их другой программе. В винде это очень удобно делается с помощью технологии COM. Но естественно для кросс-платформенности она не подойдет. Вот собственно и озадачился - а что использовать? При этом под виндой эта программа должна без проблем взаимодействовать с программами, написанными не только на Qt - а и на том же дельфи, к примеру.
Qt Service Framework - COM под Windows, DBus под *nix. или локальные сокеты, но тут придется поморочиться с сериализацией.
Записан
Alex Custov
Джедай : наставник для всех
Offline
Сообщений: 2063
Re: Чем заменить COM-server
«
Ответ #5 :
Август 14, 2012, 17:01 »
Цитата: Странник от Август 14, 2012, 16:47
или локальные сокеты, но тут придется поморочиться с сериализацией.
Для сериализации можно использовать protobuf
Записан
Bepec
Гость
Re: Чем заменить COM-server
«
Ответ #6 :
Август 14, 2012, 17:02 »
Выбор у тебя афигенный. Начиная от межпроцессового взаимодействия, заканчивая dbus ом
Записан
LisandreL
Птица говорун
Offline
Сообщений: 984
Надо улыбаться
Re: Чем заменить COM-server
«
Ответ #7 :
Август 14, 2012, 20:22 »
В зависмости от данных - QSharedMemory, QLocalSockets.
Если другие программы на Qt, то и сериализацию без зазрений совести можно использовать Qt'шную.
Записан
Alex_C
Гость
Re: Чем заменить COM-server
«
Ответ #8 :
Август 15, 2012, 08:01 »
Всем большое спасибо за советы!
Удаляюсь изучать мат. часть - потом уже задам конкретные вопросы по указанным выше реализациям!
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...