पर कॉल करें मेरे पास एक प्रक्रिया के लिए एक सेवा है जिसे मैं बूट-टाइम पर शुरू नहीं करना चाहता हूं, लेकिन इसे किसी अन्य तरह से पहले से चल रहे एप्लिकेशन से कॉल करने के लिए, एक निश्चित समय पर।सी/सी ++ एप्लिकेशन से सिस्टमड सेवा शुरू करें या डी-बस सेवा
दूसरा विकल्प डी-बस (मैं अपने ऐप्स में ग्लिब डीबीस का उपयोग कर रहा हूं) सेवा फ़ाइल/usr/share/dbus-1/सेवाओं में डाल सकता हूं और किसी भी तरह से इसे अपने एप्लिकेशन से कॉल कर सकता हूं। इसके अलावा, मैं इसे भी करने का प्रबंधन नहीं करता हूं।
मान लें कि /usr/share/dbus-1/services
से मेरी dbus सेवा फ़ाइल com.callThis.service
और से /lib/systemd/system is com.startThis.service
अपने मुख्य सेवा फ़ाइल तो मैं कमांड लाइन से एक सरल INTROSPECT चलते हैं:
/home/root # dbus-send --session --type=method_call --print-reply \
--dest=com.callThis /com/callThis org.freedesktop.DBus.Introspectable.Introspect
डी-बस सेवा फ़ाइल कॉल किया जाएगा और यह Exec (com.starThis) में क्या शुरू होगा। समस्या यह है कि मैं डी-बस ग्लिब का उपयोग कर सी/सी ++ कोड से इसे प्राप्त करना चाहता हूं।
क्या आपने इसे लागू करने का प्रयास किया था? आपके द्वारा किए गए कुछ पहले चरण दिखाएं। दस्तावेज़ीकरण और यहां तक कि एक उदाहरण भी पाया जा सकता है http://developer.gnome.org/gio/2.30/GDBusConnection.html – drahnr
http://www.freedesktop.org/wiki/Software/systemd/dbus/ यहां जानकारी है 'systemd' डीबीयूएस एपीआई –