KsFastMethodHandler 函式 (ks.h)
KsFastMethodHandler 函式會處理透過 IOCTL_KS_METHOD 要求的快速方法。 它會回應快速 I/O 清單中也包含之集合所定義的所有方法識別碼。 此函式只能在PASSIVE_LEVEL呼叫。
語法
KSDDKAPI BOOLEAN KsFastMethodHandler(
[in] PFILE_OBJECT FileObject,
[in] PKSMETHOD Method,
[in] ULONG MethodLength,
[in, out] PVOID Data,
[in] ULONG DataLength,
[out] PIO_STATUS_BLOCK IoStatus,
[in] ULONG MethodSetsCount,
[in] const KSMETHOD_SET *MethodSet
);
參數
[in] FileObject
指定提出要求的檔案物件。
[in] Method
指定原始方法參數。 這一律會FILE_LONG_ALIGNMENT,但可能不會FILE_QUAD_ALIGNMENT。
[in] MethodLength
指定方法參數呼叫端所指出的長度。
[in, out] Data
指定原始未對齊的數據參數。
[in] DataLength
指定數據參數呼叫端所指出的長度。
[out] IoStatus
指定用來傳回錯誤狀態和資訊的對齊結構。
[in] MethodSetsCount
表示要傳遞的方法集結構數目。
[in] MethodSet
指定方法集資訊清單的指標。
傳回值
如果處理要求,KsFastMethodHandler 函式會傳回 true TRUE,或未處理要求時 FALSE。 如果未處理要求,就會產生 IRP。 如果已處理要求,函式會將IoStatus->Information 元素設定為零,因為發生內部錯誤或專案是由方法處理程式所設定。 方法處理程式也會在處理方法時設定 IoStatus->Status 字段。
言論
方法集的擁有者可以使用 KsFastMethodHandler 和 KsMethodHandler 函式來執行方法處理的預先篩選或後置篩選。 KsFastMethodHandler 函式可用來處理透過裝置控制快速 I/O 分派介面提出的要求。 它只會用來處理可快速完成的要求。 不會傳遞快速 I/O 函式的 Wait 參數,並假設為 true 。
要求
要求 | 價值 |
---|---|
目標平臺 | 普遍 |
標頭 | ks.h (包括 Ks.h) |
連結庫 | Ks.lib |