Freigeben über


KdPrint-Makro (wdm.h)

Das KdPrint Makro sendet eine Nachricht an den Kerneldebugger.

KdPrint sendet eine Nachricht nur, wenn die von Ihnen angegebenen Bedingungen angewendet werden. Weitere Informationen finden Sie im folgenden Abschnitt.

Ein Aufruf von KdPrint- erfordert doppelte Klammern.

Syntax

void KdPrint(
  [in]  _x_
);

Parameter

[in] _x_

Gibt einen Zeiger auf die zu druckde Formatzeichenfolge an. Die Format Zeichenfolge unterstützt die meisten printf-style Formatspezifikationssyntax. Die Unicode-Formatcodes (%C, %S, %lc, %ls, %wc, %wsund %wZ) können jedoch nur mit IRQL = PASSIVE_LEVEL verwendet werden. Die KdPrint Routine unterstützt keine der Gleitkommatypen (%f, %e, %E, %g, %G, %aoder %A).

Rückgabewert

Nichts

Bemerkungen

KdPrint ist identisch mit der DbgPrint Routine im Code, der für eine Debugkonfiguration kompiliert wird. Diese Routine hat keine Auswirkung, wenn sie für eine Releasekonfiguration kompiliert wird. Nur Kernelmodustreiber können die KdPrint Routine aufrufen.

KdPrint sendet eine Nachricht nur, wenn bestimmte Bedingungen gelten. Insbesondere verhält es sich wie KdPrintEx- mit der DEFAULT-Komponente und einer Meldungs-Wichtigkeitsstufe von DPFLTR_INFO_LEVEL. Mit anderen Worten: Die folgenden beiden Funktionsaufrufe sind identisch:

KdPrint (( Format, arguments ))

KdPrintEx (( DPFLTR_DEFAULT_ID, DPFLTR_INFO_LEVEL, Format, arguments ))

Weitere Informationen zur Nachrichtenfilterung, -komponenten und -wichtigkeitsstufe finden Sie unter Lesen und Filtern von Debuggingnachrichten.

Unabhängig davon, welche Version von Windows Sie verwenden, wird empfohlen, KdPrintEx- anstelle von KdPrint-zu verwenden, da KdPrintEx- es Ihnen ermöglicht, die Bedingungen zu steuern, unter denen die Nachricht gesendet wird.

Sofern dies nicht unbedingt erforderlich ist, sollten Sie keine Zeichenfolge von Benutzereingaben oder einem anderen Prozess abrufen und an KdPrintübergeben. Wenn Sie eine Zeichenfolge verwenden, die Sie nicht erstellt haben, müssen Sie überprüfen, ob es sich um eine gültige Formatzeichenfolge handelt und dass die Formatcodes der Argumentliste in Typ und Menge entsprechen. Die bewährte Codierungspraxis ist für alle Format Zeichenfolgen, die zur Kompilierungszeit statisch und definiert werden.

Es gibt keine Obergrenze für die Größe der Format Zeichenfolge oder die Anzahl der Argumente. Jeder einzelne Aufruf von KdPrint überträgt jedoch nur 512 Byte Von Informationen. Es gibt auch einen Grenzwert für die Größe des DbgPrint- Puffers. Weitere Informationen finden Sie unter "DbgPrint-Puffer" und "Debugger".

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- wdm.h (include Wdm.h)
Library NtosKrnl.lib (Siehe DbgPrint.)
DLL- NtosKrnl.exe

Siehe auch

DbgPrint-

DbgPrintEx-

KdPrintEx-