Compartir a través de


estructura KSMETHOD_ITEM (ks.h)

La estructura KSMETHOD_ITEM describe un único método dentro de un conjunto de métodos.

Sintaxis

typedef struct {
  ULONG        MethodId;
  union {
    PFNKSHANDLER MethodHandler;
    BOOLEAN      MethodSupported;
  };
  ULONG        MinMethod;
  ULONG        MinData;
  PFNKSHANDLER SupportHandler;
  ULONG        Flags;
} KSMETHOD_ITEM, *PKSMETHOD_ITEM;

Miembros

MethodId

Especifica el identificador de este método dentro de su conjunto de métodos.

MethodHandler

Puntero a una minidriver proporcionada KStrMethodHandler rutina de devolución de llamada.

MethodSupported

Especifica si este método se admite o no.

MinMethod

Especifica el tamaño mínimo del búfer necesario para especificar completamente el método. Este tamaño es al menos tamaño debytes (KSMETHOD).

MinData

Especifica el búfer de tamaño mínimo necesario para especificar el búfer de datos del método. Este búfer se usa para leer o escribir información relacionada con el método .

SupportHandler

Puntero a una rutina de devolución de llamada KStrSupportHand ler proporcionada por el minidriver.

Flags

Especifica el tipo de solicitud de esta solicitud de método.

Valor Tipo de solicitud de método
KSMETHOD_TYPE_NONE Indica que no se espera que se use el búfer datos de del controlador. En el caso de los métodos almacenados en búfer, aunque se asigna espacio, no se copian datos en ni desde el búfer del sistema. Cuando está en modo de origen (KSMETHOD_TYPE_SOURCE), no se crea ninguna MDL.
KSMETHOD_TYPE_READ Indica que se espera que los parámetros se lean desde el búfer de datos de del controlador. Cuando se almacena en búfer, los datos se copian en el búfer del sistema. Cuando está en modo de origen, los datos se sondea y se bloquean para IoReadAccess.
KSMETHOD_TYPE_WRITE Indica que se espera que los parámetros se escriban en el búfer de Datos del controlador. Cuando se almacena en búfer, los datos se copian del búfer del sistema. Cuando está en modo de origen, los datos se sondeen y bloquean para IoWriteAccess.
KSMETHOD_TYPE_MODIFY Indica que se espera que los parámetros se lean y escriban en el búfer de datos de del controlador. Los datos que se devuelven sobrescriben los datos pasados. Esto podría implicar que una estructura pasada podría ser simplemente actualizada. Cuando se almacena en búfer, los datos se copian en el búfer del sistema y se copian de nuevo cuando se completa el IRP. Cuando está en modo de origen, los datos se sondea y se bloquean para IoModifyAccess.
KSMETHOD_TYPE_SOURCE Indica que el método se va a procesar en modo de origen. Se asigna una MDL y los datos se sondeen y se bloquean. Para indicar un método almacenado en búfer, O esta marca con otras marcas de esta lista.

Observaciones

Un minidriver usa la estructura KSMETHOD_ITEM para definir métodos en un conjunto de métodos. El minidriver implementa métodos y usa el miembro MethodHandler para apuntar a estos métodos. A continuación, un cliente puede usar la solicitud de IOCTL_KS_METHOD junto con la estructura KSMETHOD para ejecutar métodos en un objeto de streaming de kernel que controla el minidriver. Para obtener más información, vea KS Methods.

Requisitos

Requisito Valor
encabezado de ks.h (incluya Ks.h)

Consulte también

KSFASTMETHOD_ITEM

KSMETHOD

KStrSupportHandler