Russian Qt Forum
Ноябрь 25, 2024, 14:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: DCOP и Qt4  (Прочитано 4368 раз)
NayZaK
Гость
« : Февраль 10, 2009, 12:09 »

Мне нужно в Qt4 проекте использовать классы DCOPClient, DCOPReply и DCOPRef. Как это можно сделать?
Т.е. мне нужно, чтобы Qt4 приложение получало данные от запущенного процесса через dcop, но, как известно, в Qt4 нет поддержки dcop. В Qt3 приложении всё прекрасно работает. Так что прошу совета:)
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #1 : Февраль 10, 2009, 12:27 »

В Qt3 приложении всё прекрасно работает.

А как это работает в Qt3 приложении? Посредством чего?
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
NayZaK
Гость
« Ответ #2 : Февраль 10, 2009, 13:50 »

Толи KDE, толи Qt3 предоставляет средства для разработки с использованием DCOP.
Так вот просто подключаются хидеры DCOPClient.h и DCOPRef.h, затем используются вышеперечисленные классы для получения информации от других приложений посредством DCOP. Т.e. я создаю Qt проект, делаю простенький код, который, к примеру, с Amarok 1.4 получает информацию об исполнителе, затем qmake-qt3 && make - работает.
qmake-qt4 && make выдаёт при этом кучу ошибок, в основном связанных с тем, что та или иная синтаксическая конструкция не является типом данных.

Пытался делать динамическую библиотеку. Создал Qt3-проект, собрал библиотеку. После попытки её использовать в Qt4 приложении летят сегфолты:)
Записан
BRE
Гость
« Ответ #3 : Февраль 10, 2009, 14:52 »

Доступ к DCOP предоставляет KDE3, она основывается на Qt3.
Для Qt4, придется все классы работы с DCOP переписать самому, т.к. в KDE4 - уже DBus.
Записан
NayZaK
Гость
« Ответ #4 : Февраль 10, 2009, 15:06 »

BRE
Т.е. обходных путей вообще нет?Улыбающийся
Записан
BRE
Гость
« Ответ #5 : Февраль 10, 2009, 15:24 »

BRE
Т.е. обходных путей вообще нет?Улыбающийся
Все силы брошены на KDE4, там DBus, который предоставляет Qt4, т.е. от DCOP уже отказались.
Можно попытаться выдрать этот функционал из KDE3, и попробовать адаптировать к Qt4, но повозиться придется...
Конечно, может существуют какие-то прокси-системы, но не уверен.
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #6 : Февраль 10, 2009, 18:02 »

Толи KDE, толи Qt3 предоставляет средства для разработки с использованием DCOP.
Так вот просто подключаются хидеры DCOPClient.h и DCOPRef.h, затем используются вышеперечисленные классы для получения информации от других приложений посредством DCOP. Т.e. я создаю Qt проект, делаю простенький код, который, к примеру, с Amarok 1.4 получает информацию об исполнителе, затем qmake-qt3 && make - работает.
qmake-qt4 && make выдаёт при этом кучу ошибок, в основном связанных с тем, что та или иная синтаксическая конструкция не является типом данных.

Пытался делать динамическую библиотеку. Создал Qt3-проект, собрал библиотеку. После попытки её использовать в Qt4 приложении летят сегфолты:)

Создай простой проект, и запость сюда код. Хедеры KDE установлены? Пути к ним прописаны в .pro? Библиотеки добавлены в .pro?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 22.