Функция KsFastMethodHandler (ks.h)
Функция KsFastMethodHandler обрабатывает быстрые методы, запрашиваемые через IOCTL_KS_METHOD. Он реагирует на все идентификаторы методов, определенные наборами, которые также содержатся в списке быстрых операций ввода-вывода. Эта функция может вызываться только в 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, если запрос обрабатывается, или FALSE, если запрос не обрабатывается. Если запрос не обрабатывается, создается IRP. Если запрос был обработан, функция задает элемент IoStatus->Information равным нулю из-за внутренней ошибки или элемент задается обработчиком метода. Обработчик методов также задает поле состояния IoStatus>при обработке метода.
Замечания
Владелец набора методов может выполнять префильтрирование или послефильтровку метода с помощью функций KsFastMethodHandler и KsMethodHandler . Функция KsFastMethodHandler используется для обработки запросов, выполненных через быстрый интерфейс отправки ввода-вывода для управления устройствами. Он используется только для обработки запросов, которые можно быстро выполнить. Параметр wait функции быстрого ввода-вывода не передается и предполагается, что TRUE.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | ks.h (include Ks.h) |
библиотеки | Ks.lib |