次の方法で共有


AVC_FUNCTION_GET_UNIQUE_ID

AVC_FUNCTION_GET_UNIQUE_ID 関数コードは、AV/C ユニットの一意の ID を取得します。

I/O ステータス ブロック

成功した場合、AV/C プロトコル ドライバーは Irp->IoStatus.Status をSTATUS_SUCCESSに設定します。

その他の戻り値は次のとおりです

戻り値 説明
STATUS_TIMEOUT 要求は行われましたが、すべてのタイムアウトと再試行処理が完了する前に応答は受信されませんでした。
STATUS_REQUEST_ABORTED IRP の完了状態が STATUS_REQUEST_ABORTED されると、すぐに中止します。 これは、デバイスが削除されたか、1394 バスで使用できなくなったことを示します。
状態_* その他のリターン コードは、AV/C プロトコルの範囲外のエラーまたは警告が発生したことを示します。

Comments

この関数は、次に示すように、AVC_MULTIFUNC_IRB 構造体の UniqueID メンバーを使用します。

typedef struct _AVC_MULTIFUNC_IRB {
  AVC_IRB  Common;
  union {
    .
    .
    .
    AVC_UNIQUE_ID UniqueID;
 .
    .
    .
  };
} AVC_MULTIFUNC_IRB, *PAVC_MULTIFUNC_IRB;

AVC_UNIQUE_ID 構造体のメンバーを次に示します。

typedef struct _AVC_UNIQUE_ID {
    OUT GUID DeviceID;
} AVC_UNIQUE_ID, *PAVC_UNIQUE_ID;

要件

ヘッダー:avc.h で宣言されています。 avc.h を含めます。

AVC_MULTIFUNC_IRB入力

通常
このメンバーの Function サブメンバーは、AVC_FUNCTION 列挙型から AVC_FUNCTION_GET_UNIQUE_ID に設定する必要があります。

UniqueID
ユニット全体を表す GUID を指定します。 同じユニット内のすべてのサブユニットは、同じ GUID を共有します。 同じ GUID を共有する 2 つのユニットはありません。

この関数コードは、avc.sys仮想インスタンスではサポートされていません。

サブユニット ドライバーは、デバイス GUID を制御アプリケーション (同じユニットに属する多数のサブユニット ドライバー インスタンスのうちどれかを知る必要があるアプリケーション) に報告する必要がある場合、または外部プラグ用に独自の AVCPRECONNECTINFO 構造体を構築している場合に、この関数を使用します。

これは IRQL = PASSIVE_LEVELで呼び出す必要があります。

関連項目

AVC_MULTIFUNC_IRB

AVC_UNIQUE_ID

AVCPRECONNECTINFO

AVC_FUNCTION