AVC_FUNCTION_GET_UNIQUE_ID
AVC_FUNCTION_GET_UNIQUE_ID函式程式碼會取得 AV/C 單位的唯一識別碼。
I/O 狀態欄塊
如果成功,AV/C 通訊協定驅動程式會將 Irp-IoStatus.Status > 設定為 STATUS_SUCCESS。
可能的其他傳回值包括:
傳回值 | 描述 |
---|---|
STATUS_TIMEOUT | 已提出要求,但在所有逾時和重試處理完成之前都未收到任何回應。 |
STATUS_REQUEST_ABORTED | STATUS_REQUEST_ABORTED IRP 完成狀態時立即中止。 這表示裝置已移除,或在 1394 匯流排上不再提供。 |
地位_* | 任何其他傳回碼都表示發生錯誤或警告,超出 AV/C 通訊協定的範圍。 |
註解
此函式會使用 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。
avc.sys的虛擬實例不支援此函式程式代碼。
如果子單位驅動程式必須將裝置 GUID 回報給控制應用程式, (必須知道哪些子單位驅動程式實例屬於相同的單元) ,或者它正在為外部外掛程式建置自己的 AVCPRECONNECTINFO 結構,則子單位驅動程式會使用此函式。
這必須在 IRQL = PASSIVE_LEVEL呼叫。