Macro KdPrintEx (wdm.h)
La macro KdPrintEx envía una cadena al depurador de kernel si se cumplen las condiciones especificadas.
Una llamada a KdPrintEx requiere paréntesis dobles.
Sintaxis
void KdPrintEx(
_x_
);
Parámetros
_x_
Especifica argumentos para la cadena de formato, como en printf.
Valor devuelto
Ninguno
Observaciones
KdPrintEx pasa la cadena especificada al depurador de kernel o no hace nada en absoluto, en función de los valores de ComponentId, Levely las máscaras de filtro de componentes correspondientes. Para obtener más información, consulte lectura y filtrado de mensajes de depuración.
A menos que sea absolutamente necesario, no debe obtener una cadena de la entrada del usuario u otro proceso y pasarla a KdPrintEx. Si usa una cadena que no creó, debe comprobar que se trata de una cadena de formato válida y que los códigos de formato coinciden con la lista de argumentos en tipo y cantidad. El procedimiento de codificación recomendado es que todas las cadenas Format sean estáticas y definidas en tiempo de compilación.
No hay ningún límite superior para el tamaño del Formato cadena o el número de argumentos. Sin embargo, cualquier llamada única a KdPrintEx solo transmitirá 512 bytes de información. También hay un límite para el tamaño del búfer dbgPrint. Consulte El búfer de DbgPrint y el depurador para obtener más información.
Esta rutina se define en ntddk.h y ndis.h; Los identificadores de filtro de componentes se definen en dpfilter.h, ndis.h y wdm.h. Incluya ntddk.h o ndis.h.
Estos son los argumentos:
ComponentId [in]
Especifica el componente que llama a esta rutina. Debe ser uno de los identificadores de filtro de nombre de componente definidos en el archivo de encabezado dpfilter.h. Para evitar mezclar la salida del controlador con la salida de los componentes de Windows, debe usar solo los siguientes valores para ComponentId:
DPFLTR_IHVVIDEO_ID
DPFLTR_IHVAUDIO_ID
DPFLTR_IHVNETWORK_ID
DPFLTR_IHVSTREAMING_ID
DPFLTR_IHVBUS_ID
DPFLTR_IHVDRIVER_ID
Formato [in]
Especifica un puntero a la cadena de formato que se va a imprimir. La cadena format de
admite la mayoría de los campos de especificación de formato printf -style. Sin embargo, los códigos de formato Unicode (%C, %S, %lc, %ls, %wc, %wsy %wZ) solo se pueden usar con IRQL = PASSIVE_LEVEL. La rutina de KdPrintEx no admite ninguno de los tipos de punto flotante ( %f ,%e ,%E ,%g ,%G ,%a o%A ).Nivel [in]
Especifica la gravedad de este mensaje. Puede ser cualquier entero de 32 bits. Los valores entre 0 y 31 (ambos incluidos) se tratan de forma diferente a los valores entre 32 y 0xFFFFFFFF. Para obtener más información, consulte lectura y filtrado de mensajes de depuración.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible en Microsoft Windows XP y versiones posteriores. |
de la plataforma de destino de |
Escritorio |
encabezado de |
wdm.h (incluya Wdm.h) |
biblioteca de |
NtosKrnl.lib (vea DbgPrintEx).) |
DLL de |
NtosKrnl.exe |