Función KsPinDataIntersectionEx (ks.h)
La función KsPinDataIntersectionEx controla el KSPROPERTY_PIN_DATAINTERSECTION a través de una función de devolución de llamada.
Sintaxis
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
);
Parámetros
[in] Irp
Especifica el IRP que describe la solicitud de propiedad.
[in] Pin
Especifica la propiedad específica que se está consultando.
[out] Data
Especifica los datos específicos de la propiedad pin.
[in] DescriptorsCount
Especifica el número de estructuras de descriptor.
[in] Descriptor
Especifica el puntero a la lista de estructuras de información de anclaje.
[in] DescriptorSize
Tamaño de las estructuras de descriptor, en bytes.
[in, optional] IntersectHandler
Contiene la función de devolución de llamada KStrIntersectHandlerEx definida por el minidriver opcional para comparar los intervalos de datos.
[in, optional] HandlerContext
Contexto opcional que se proporciona al controlador.
Valor devuelto
Devuelve STATUS_SUCCESS; de lo contrario, se trata de un error específico de la propiedad que se está controlando.
Comentarios
KsPinDataIntersectionEx es muy similar a KsPinDataIntersection, excepto algunas de las siguientes pequeñas diferencias:
- En KsPinDataIntersectionEx, se pasa el tamaño del descriptor, una característica que permite descriptores extendidos.
- La función de devolución de llamada de intersección de datos se crea de forma diferente en la versión extendida (devolución de llamada NTSTATUS (Context, Irp, Pin, DataRange, MatchingDataRange, DataBufferSize, Data, DataSize)) frente a KsPinDataIntersection (Devolución de llamada NTSTATUS (Irp, Pin, DataRange, Data)).
- La longitud del búfer de salida (Datos) se pasa como parámetro a la función de devolución de llamada de intersección de datos (DataBufferSize) en lugar de extraerse de la ubicación de pila de E/S actual.
- La función de devolución de llamada de intersección de datos se pasa a un parámetro Context (el mismo parámetro Context pasado a KsPinDataIntersectionEx).
- El tamaño del formato resultante se devuelve en DataSize en lugar de Irp->IoStatus.Information.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | ks.h (incluya Ks.h) |