Функция 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-Status> при обработке метода.
Комментарии
Владелец набора методов может выполнять префильтровку или постфильтровку обработки метода с помощью функций KsFastMethodHandler и KsMethodHandler . Функция KsFastMethodHandler используется для обработки запросов, выполненных через интерфейс быстрой диспетчеризации ввода-вывода для управления устройствами. Он используется только для обработки запросов, которые можно быстро выполнить. Параметр Wait функции быстрого ввода-вывода не передается и принимается значение TRUE.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | ks.h (включая Ks.h) |
Библиотека | Ks.lib |