2011-12-24 9 views
14

मैं दो दिनों के बीच पूर्णांक भेजने के लिए QtDbus का उपयोग करने के तरीके को समझने के लिए चार दिन पहले कोशिश करता हूं। लेकिन मेरे सभी प्रयास विफल रहे। मुझे इंटरनेट में बहुत सारे उदाहरण मिलते हैं, लेकिन जब मैं इसे सब एक साथ रखने की कोशिश कर रहा हूं, तो मैं यह नहीं चुन सकता कि कहां और क्या गलत हो रहा है। मैंने सफल सिग्नल & & स्लॉट तंत्र का उपयोग किया लेकिन मैंने पहले कभी डबस का उपयोग नहीं किया। मैं भी शुरू नहीं कर सकता .. क्या कोई न्यूनतम न्यूनतम उदाहरण दे सकता है?QtDbus C++ न्यूनतम उदाहरण

+0

इसके अलावा मेरे संबंधित सवाल देख सकते हैं और जवाब देने के: http://stackoverflow.com/questions/20206376/how-do-i -extract-the-return-data-qdbusmessage-in-a-qt-dbus-call – MatthewD

+0

कृपया अपने प्रश्न [संपादित करें] को दिखाने के लिए [जिसे आपने अभी तक आजमाया है] (http://whathaveyoutried.com)। आपको उस कोड का एक [mcve] शामिल करना चाहिए जिसमें आपको समस्याएं आ रही हैं, फिर हम विशिष्ट समस्या के साथ मदद करने का प्रयास कर सकते हैं। आपको [पूछना] भी पढ़ना चाहिए। –

+0

क्या आप गंभीर हैं? – Tebe

उत्तर

1

कई उदाहरण है कि क्यूटी प्रलेखन का हिस्सा हैं कर रहे हैं, देखें: शुरुआत यह पर http://www.developer.nokia.com/Community/Wiki/QtDbus_quick_tutorial

+0

अगर मैं केवल इस उदाहरण में से एक को एक साथ रखने में सक्षम था ... यह इतना आसान नहीं है कि – Tebe

+0

लिखा गया है क्यूटी उदाहरण (पहला लिंक) सभी में रीड-टू-कंपाइल स्रोत कोड शामिल है। मैं उन लोगों में से एक के साथ शुरू करने का सुझाव दूंगा, इसे संकलित करने और वहां से काम करने के लिए। वैकल्पिक रूप से, दूसरा लिंक आपको स्क्रैच से कैसे बनाना है, इस माध्यम से चलता है। वैसे भी, शुभकामनाएँ! =) – wjl

+0

नहीं, मैंने कोशिश की। तो मुझे सिग्नल का उपयोग करने के लिए मजबूर किया गया है, जो बहुत बेहतर दस्तावेज हैं और qtdbus छोड़ते हैं। – Tebe

0

: http://developer.qt.nokia.com/doc/qt-4.8/examples-dbus.html

इसके अलावा, यहां एक ट्यूटोरियल है कि एक साधारण dbus क्लाइंट और सर्वर बनाने के माध्यम से चलता है है काफी गड़बड़ है वैसे भी, कुछ लॉग रखकर और dbus-monitor का उपयोग करके आपको यह समझने में मदद करनी चाहिए कि कौन सा हिस्सा असफल रहा है। वैसे भी, क्यूटी उदाहरणों के साथ, आपको this बहुत उपयोगी मिल सकता है। यह दस्तावेजों का एक सेट पूरी तरह से समझाया गया है। मैंने इस मामले में क्यूटी के उन लोगों की तुलना में उनसे अधिक उपयोगी पाया।

16

सर्वोत्तम संभव ट्यूटोरियल को समझने के लिए क्यूटी-dbus मुझे लगता है यह था सकता है -

KDE Tutorial on Qt-DBus

कोशिश इस क्रम में ट्यूटोरियल का पालन करने के लिए -

  1. परिचय करने के लिए डी-बस
  2. डी-बस इंटरफेस बनाना
  3. डीबीस इंटरफ़ेस तक पहुंच
  4. क्यूटी-डीबीस

के लिए कस्टम प्रकार बनाना, फिर कम से कम इनके साथ सहज होने पर उनमें से बाकी का पालन करें।

आप इस उपकरण को भी इंस्टॉल कर सकते हैं - D-Feet यह डीबीस कोड को समझने/डिबग करने में बहुत मदद करता है।

धैर्य रखें और उपरोक्त लिंक एक-एक करके आज़माएं, विशिष्ट संदेहों के साथ यहां वापस आएं, समुदाय आपकी सहायता करेगा।

आपको एक नमूना आवेदन देने से आपकी सहायता नहीं होगी क्योंकि यह वास्तव में कोड के बारे में नहीं है, इसके बारे में आपको उस कोड तक पहुंचने के लिए अनुसरण करने की प्रक्रिया के बारे में बताया गया है (अधिकांश कोड एडाप्टर और प्रॉक्सी कक्षाओं के रूप में ऑटो उत्पन्न होता है। आपको बस यह सीखना होगा कि इसे कैसे करें)।

+0

यह सवाल का जवाब कैसे दे रहा है? असंबद्ध लिंक के अलावा, आपने उदाहरण प्रदान नहीं किया –

+3

कभी-कभी उत्तर उत्तर नहीं है, उत्तर की ओर एक दिशा है। –

1

मैंने wjl (http://www.developer.nokia.com/Community/Wiki/QtDbus_quick_tutorial) द्वारा वर्णित ट्यूटोरियल का भी उपयोग किया, लेकिन मुझे तब तक परेशानी थी जब तक मुझे डेमोफाडैप्टर का एहसास नहीं हुआ। * फ़ाइलें डबस और माइडेमो के लिए इंटरफ़ेस हैं। * फ़ाइलें आपके एप्लिकेशन का हिस्सा हैं जो काम करती है। उन भूमिकाओं को पहले मुझे स्पष्ट नहीं था (शायद क्यूटी के साथ कुछ अनुभवहीनता के कारण)।

वैसे भी, एक बार मैं निम्नलिखित mydemo.c बना लिया, तो चीजें काम किया:

#include "mydemo.h" 
#include <QObject> 
#include <iostream> 

MyDemo::MyDemo(QObject *parent) 
{ 
    // Do nothing 
} 

void MyDemo::SayBye() 
{ 
    std::cout << "Bye" << std::endl; 

} 

void MyDemo::SayHello(const QString &name, const QVariantMap &customdata) 
{ 
    std::cout << "Hello" << std::endl; 
} 

// end of file 
संबंधित मुद्दे