Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Kommunikation und Netzwerk

k24:k24.9:k24.9.4:start

24.9.4 DBusConnection

Die Klasse DBusConnection (gb.dbus) repräsentiert eine Verbindung einer d-bus-fähigen Anwendung zum System-D-Bus oder zum Session-D-Bus. Objekte der Klasse können Sie nicht erzeugen, da sich die Verbindung stets auf eine bereits existierende Verbindung bezieht.

24.9.4.1 Eigenschaften

Die Klasse DBusConnection verfügt nur über eine nutzbare Eigenschaft:

EigenschaftDatentypBeschreibung
ApplicationsString[ ]Es wird eine Liste ausgegeben mit den D-Bus-Namen der Anwendungen, die am D-Bus registriert sind.
TagVariantHinweis: Die Eigenschaft kann nicht genutzt werden, da sie innerhalb der Komponente gb.dbus bereits verwendet wird!

Tabelle 24.9.4.1.1 : Eigenschaften der Klasse DBusConnection

24.9.4.2 Methoden

Die Klasse DBusConnection besitzt diese beiden Methoden:

MethodeBeschreibung
Register ( Object As DBusObject, Path As String [ , Interfaces As String[] ] )Exportiert ein D-Bus-Objekt zum D-Bus, ab Gambas-Version 3.9. Für die Parameter gilt: Object ist das zu exportierende D-Bus-Objekt, Path ist der D-Bus-Pfad für das D-Bus-Objekt und Interface (optional) ermöglicht die Angabe der Namen von zusätzlichen Schnittstellen in einem String-Array, die für das angegebene D-Bus-Objekt implementiert wurden.
Unregister ( Object As DBusObject )Meldet das im Parameter genannte D-Bus-Objekt vom D-Bus ab.

Tabelle 24.9.4.2.1 : Methoden der Klasse DBusConnection

24.9.4.3 Beispiele

Da die Klasse DBusConnection eine Verbindung einer d-bus-fähigen Anwendung zum System-D-Bus oder zum Session-D-Bus repräsentiert, findet sie stets Verwendung im Zusammenspiel mit der Klasse DBusApplication – so wie im folgenden Beispiel:

  Dim hDBusApplication As DBusApplication
  Dim hConnection As DBusConnection
  Dim sDBusName As String

  sDBusName = "org.freedesktop.NetworkManager"
  hConnection = DBus.System
  hDBusApplication = New DBusApplication(hConnection, sDBusName)

Der folgende Quelltext verwendet die Eigenschaft Applications, um die auf dem System-D-Bus registrierten Anwendungen anzuzeigen:

Private Sub GetDBusSsystemApplications2()
 
  Dim i As Integer
  Dim aSessionList As String[]
  Dim hConnection As DBusConnection
 
  hConnection = DBus.System
  aSessionList = hConnection.Applications.Sort(gb.Descent)
  For i = 0 To aSessionList.Max
    Print aSessionList[i]
  Next
 
End

In der Konsole der Gambas-IDE werden alle registrierten Anwendungen auf dem System-D-Bus sortiert ausgegeben. Hier sehen Sie nur einen kleinen Ausschnitt:

org.freedesktop.thermald
org.freedesktop.systemd1
org.freedesktop.login1
org.freedesktop.UPower
org.freedesktop.UDisks2
org.freedesktop.RealtimeKit1
org.freedesktop.PolicyKit1
org.freedesktop.NetworkManager.dnsmasq
org.freedesktop.NetworkManager
org.freedesktop.ModemManager1
...
:1.9
:1.84
...
:1.20
:1.16
:1.1
:1.0

Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k24/k24.9/k24.9.4/start.txt · Zuletzt geändert: 05.04.2018 (Externe Bearbeitung)

Seiten-Werkzeuge