SRB_GET_STREAM_INFO
類別驅動程式會傳送此要求,以取得裝置的描述及其支持的數據流。
傳回值
迷你驅動程式應該將下列其中一項設定為 SRB 中的狀態:
STATUS_SUCCESS
表示命令成功完成。
STATUS_IO_DEVICE_ERROR
表示發生硬體失敗。
註解
類別驅動程式會在 minidriver 所指定大小的 pSrb-CommandData.StreamBuffer > 中傳遞緩衝區,以響應類別驅動程式的SRB_INITIALIZE_DEVICE要求。 pSrb 指標指向HW_STREAM_REQUEST_BLOCK結構。 另請參閱 PORT_CONFIGURATION_INFORMATION。
迷你驅動程式會以描述裝置及其支持的數據流HW_STREAM_DESCRIPTOR填入 CommandData.StreamBuffer。 此緩衝區的大小是由 PORT_CONFIGURATION_INFORMATION 結構之 StreamDescriptorSize 欄位中的minidriver表示。
類別驅動程式通常只會發出此要求一次。 minidriver 可能會強制類別驅動程式重新發出此要求,藉由呼叫 StreamClassReenumerateStreams 來更新其支持數據流的描述。
當 minidriver 收到SRB_GET_STREAM_INFO命令時,minidriver 應該:
擷取數據流標頭和數據流信息數據結構的指標。 例如:
PHW_STREAM_HEADER pstrhdr = (PHW_STREAM_HEADER)&(pSrb->CommandData.StreamBuffer->StreamHeader); PHW_STREAM_INFORMATION pstrinfo = (PHW_STREAM_INFORMATION)&(pSrb->CommandData.StreamBuffer->StreamInfo);
確認緩衝區夠大,足以保存傳回的數據。
將資訊寫入緩衝區。