estructura PCMETHOD_ITEM (portcls.h)
La estructura PCMETHOD_ITEM describe un método admitido por un filtro, un pin o un nodo.
Sintaxis
typedef struct {
const GUID *Set;
ULONG Id;
ULONG Flags;
PCPFNMETHOD_HANDLER Handler;
} PCMETHOD_ITEM, *PPCMETHOD_ITEM;
Miembros
Set
Especifica el conjunto de métodos. Este miembro es un puntero a un GUID que identifica de forma única el conjunto de métodos.
Id
Especifica el identificador del método. Este miembro identifica un elemento de método en el conjunto de métodos. Si el conjunto de métodos contiene n elementos, los identificadores de método válidos son enteros en el intervalo de 0 a n-1.
Flags
Especifica el tipo de paso de parámetros y el acceso a la memoria que usa un método. Este miembro se puede establecer en el OR bit a bit de uno o varios de los bits de marca de la tabla siguiente.
Bit de marca | Significado |
---|---|
PCMETHOD_ITEM_FLAG_MODIFY | El método lee y escribe en el búfer de parámetros. |
PCMETHOD_ITEM_FLAG_NONE | El método no usa el búfer de parámetros. |
PCMETHOD_ITEM_FLAG_READ | El método lee del búfer de parámetros. |
PCMETHOD_ITEM_FLAG_SOURCE | El método sondea y bloquea las páginas de memoria antes de intentar el acceso a la memoria. |
PCMETHOD_ITEM_FLAG_WRITE | El método escribe en el búfer de parámetros. |
Handler
Puntero a la rutina del controlador de métodos. Este miembro es un puntero de función de tipo PCPFNMETHOD_HANDLER, que se define de la siguiente manera:
typedef NTSTATUS (*PCPFNMETHOD_HANDLER)
(
IN PPCMETHOD_REQUEST MethodRequest
);
Al llamar a la rutina Handler , el autor de la llamada pasa un único parámetro de llamada, que es un puntero a una estructura de tipo PCMETHOD_REQUEST.
Comentarios
El subsistema de audio WDM no admite actualmente métodos en instancias de filtro ni en instancias de anclaje. Esta restricción también impide la compatibilidad con métodos en nodos.
La estructura PCAUTOMATION_TABLE contiene un puntero a una matriz de estructuras de PCMETHOD_ITEM.
Requisitos
Requisito | Valor |
---|---|
Header | portcls.h (incluya Portcls.h) |