「C Sharpの応用 - D-Bus」の版間の差分

ナビゲーションに移動 検索に移動
125行目: 125行目:
== D-Busヘルパーファイル ==
== D-Busヘルパーファイル ==
==== D-Busヘルパーファイルのサンプルコード ====
==== D-Busヘルパーファイルのサンプルコード ====
D-Busヘルパーファイルは、以下に示すような順で処理を記述する。<br>
# D-Busシステムバス、または、D-Busセッションバスに接続する。
#: <code>Connection</code>クラスの<code>ConnectAsync</code>メソッド
# D-Busオブジェクトを登録する。
#: <code>Connection</code>クラスの<code>RegisterObjectAsync</code>メソッド、または、<code>RegisterObjectsAsync</code>メソッド
# D-Busサービスを登録する。
#: <code>Connection</code>クラスの<code>RegisterServiceAsync</code>メソッド
# サービスを消費するアプリケーションの場合は、<code>ActivateServiceAsync</code>メソッドを実行する。
#: <code>Connection</code>クラスの<code>ActivateServiceAsync</code>メソッド
# D-Busサービスが呼び出されてヘルパーファイルが実行されるまで待機する。<br>また、一定時間内に呼び出しが無い場合は、D-Busサービスを終了することを推奨する。
#: 一定時間のみ待機する場合 (例: 30[Sec])
#: <code>await Task.Delay(1000 * 30)</code>
#: <br>
#: PCをシャットダウンするまで待機する場合
#: <code>while (true) { await Task.Delay(int.MaxValue) }</code>
<br>
以下の例で使用しているD-Busヘルパーファイルのインターフェースは、以下に示すような構造をしている。<br>
以下の例で使用しているD-Busヘルパーファイルのインターフェースは、以下に示すような構造をしている。<br>
  <syntaxhighlight lang="xml">
  <syntaxhighlight lang="xml">

案内メニュー