Функция KsPinDataIntersectionEx (ks.h)
Функция KsPinDataIntersectionEx обрабатывает KSPROPERTY_PIN_DATAINTERSECTION через функцию обратного вызова.
Синтаксис
KSDDKAPI NTSTATUS KsPinDataIntersectionEx(
[in] PIRP Irp,
[in] PKSP_PIN Pin,
[out] PVOID Data,
[in] ULONG DescriptorsCount,
[in] const KSPIN_DESCRIPTOR *Descriptor,
[in] ULONG DescriptorSize,
[in, optional] PFNKSINTERSECTHANDLEREX IntersectHandler,
[in, optional] PVOID HandlerContext
);
Параметры
[in] Irp
Указывает IRP, описывающий запрос свойства.
[in] Pin
Указывает конкретное свойство, которое запрашивается.
[out] Data
Указывает данные, относящиеся к свойству пин-кода.
[in] DescriptorsCount
Указывает количество структур дескриптора.
[in] Descriptor
Указывает указатель на список структур сведений о закреплении.
[in] DescriptorSize
Размер структур дескриптора в байтах.
[in, optional] IntersectHandler
Содержит необязательную функцию обратного вызова, определяемую мини-driver KStrIntersectHandlerEx для сравнения диапазонов данных.
[in, optional] HandlerContext
Необязательный контекст, предоставленный обработчику.
Возвращаемое значение
Возвращает STATUS_SUCCESS; в противном случае ошибка, связанная с обрабатываемым свойством.
Замечания
KsPinDataIntersectionEx очень похож на KsPinDataIntersection, за исключением некоторых из следующих незначительных различий:
- В KsPinDataIntersectionExпередается размер дескриптора, функция, которая позволяет расширенным дескрипторам.
- Функция обратного вызова пересечения данных создается по-разному в расширенной версии (обратный вызов NTSTATUS (контексте, Irp, Закрепить, DataRange, MatchingDataRange, DataBufferSize , Data, DataSize)) и KsPinDataIntersection (обратный вызов NTSTATUS (Irp, закрепить, DataRange, data)).
- Длина выходного буфера (данных) передается в функцию обратного вызова пересечения данных (DataBufferSize), а не извлекается из текущего расположения стека ввода-вывода.
- Функция обратного вызова пересечения данных передает параметр контекста (тот же параметр контекстаKsPinDataIntersectionEx).
- Размер результирующий формат передается обратно в DataSize вместо Irp—>IoStatus.Information.
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | ks.h (include Ks.h) |