次の方法で共有


デバイスホストにデバイスを登録する方法

実行中のデバイスまたは実行されていないデバイスを登録できます。

実行中のデバイスの登録

デバイスは、IUPnPRegistrar インターフェイスを使用して登録されます。 実行中のデバイスを登録できるのは管理者だけです。 実行中のデバイス コントロール オブジェクトを持つデバイスを登録するには、アプリケーションで IUPnPRegistrar::RegisterRunningDevice呼び出し、次のコードを渡す必要があります。

  • デバイスの説明のテキスト。
  • IUnknown デバイス コントロール オブジェクトへのポインター。
  • デバイス コントロール オブジェクトの IUPnPDeviceControl::Initialize メソッドに渡される初期化文字列。
  • リソース ディレクトリの場所。
  • デバイスの有効期間。
  • この呼び出しの戻り値である Device ID パラメーター (OUT パラメーター)。デバイス ID へのポインターが C++ で返されます。

作動していないデバイスの登録

デフォルトでは、管理者と対話型ユーザーだけが実行されていないデバイスを登録できます。 実行されていないデバイス コントロール オブジェクトにデバイスを登録するために、アプリケーションは IUPnPRegistrar::RegisterDevice メソッドを使用します。

実行中でないデバイス コントロール オブジェクトにデバイスをプログラムで登録するには、アプリケーションで IUPnPRegistrar::RegisterDevice呼び出し、次のパラメーターを渡す必要があります。

  • デバイスの説明のテキスト。
  • デバイス コントロール オブジェクトの ProgID。
  • デバイス コントロール オブジェクトの IUPnPDeviceControl::Initialize メソッドに渡される初期化文字列。
  • コンテナー ID。
  • リソース ディレクトリの場所。
  • デバイスの有効期間。
  • この呼び出しの戻り値である Device ID パラメーター (OUT パラメーター)。デバイス ID へのポインターが C++ で返されます。

実行されていないデバイスの登録は、システムの起動時に保持されるように構成できます (デバイスはシャットダウン フェーズ中に発行されません)。 したがって、このように構成すると、コンピューターが起動されるたびにデバイスが公開され、発表されます。