SRB_CLOSE_STREAM
類別驅動程式會傳送此要求以關閉數據流。
傳回值
迷你驅動程式應該將下列其中一項設定為 SRB 中的狀態:
STATUS_SUCCESS
表示命令成功完成。
STATUS_NOT_IMPLEMENTED
表示迷你驅動程式不支援函式。
STATUS_IO_DEVICE_ERROR
表示發生硬體失敗。
註解
類別驅動程式會在 pSrb-StreamObject> 中提供HW_STREAM_OBJECT緩衝區,並將 pSrb-StreamObject-StreamNumber>> 設定為要關閉的數據流數目。 pSrb 指標指向HW_STREAM_REQUEST_BLOCK結構。 StreamNumber 會對應至 minidriver 為了回應SRB_GET_STREAM_INFO要求而提供之HW_STREAM_DESCRIPTOR結構內的數據流位移。
如果迷你驅動程式成功關閉數據流,迷你驅動程式會傳回STATUS_SUCCESS。 否則,它會傳回適當的錯誤狀態。
當 minidriver 收到SRB_CLOSE_STREAM命令時,回應的迷你驅動程式例程應該:
開啟數據流時,釋放迷你驅動程式所配置的任何資源。
如果數據流使用時鐘,請停止參考時鐘。
將數據流狀態重設為 [停止]。
請注意,當相關聯的使用者模式應用程式當機時,串流可能會任意關閉數據流。 因此,您必須釋放數據流的所有未處理資源、完成數據流的所有暫止 SRB,並將數據流放回靜止狀態。