📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

138行目: 138行目:
   
   
       // 取得したsmb.serviceのユニットパスを使用して、smb.serviceの開始状態を取得
       // 取得したsmb.serviceのユニットパスを使用して、smb.serviceの開始状態を取得
      /// D-Busサービス名は、"org.freedesktop.systemd1"
      /// D-Busオブジェクト名は、smb.serviceのユニットパス
       auto unitProxy = sdbus::createProxy(systemdProxy.getConnection(), std::move(sdbus::ServiceName{"org.freedesktop.systemd1"}), unitPath);
       auto unitProxy = sdbus::createProxy(systemdProxy.getConnection(), std::move(sdbus::ServiceName{"org.freedesktop.systemd1"}), unitPath);
   
   
      /// D-Busインターフェース名は、"org.freedesktop.DBus.Properties"
      /// D-Busインターフェースメソッド名は、"Get"
       auto getProperty = unitProxy->createMethodCall(sdbus::InterfaceName{"org.freedesktop.DBus.Properties"}, sdbus::MethodName{"Get"});
       auto getProperty = unitProxy->createMethodCall(sdbus::InterfaceName{"org.freedesktop.DBus.Properties"}, sdbus::MethodName{"Get"});
     
      /// D-Busインターフェースメソッド"Get"の引数を指定
       getProperty << "org.freedesktop.systemd1.Unit" << "ActiveState";
       getProperty << "org.freedesktop.systemd1.Unit" << "ActiveState";
      /// D-Busインターフェースメソッドを実行して、戻り値を取得
       auto propertyReply = unitProxy->callMethod(getProperty);
       auto propertyReply = unitProxy->callMethod(getProperty);
   
   
      /// 戻り値は文字列型であるため、文字列型に変換
      /// smb.serviceが正常に開始されている場合は、文字列は"active"となる
       sdbus::Variant variant;
       sdbus::Variant variant;
       propertyReply >> variant;
       propertyReply >> variant;