DbgPrompt-Funktion (ntddk.h)

Die DbgPrompt-Routine zeigt eine vom Aufrufer angegebene Benutzereingabeaufforderungszeichenfolge auf dem Anzeigegerät des Kerneldebuggers an und ruft eine Benutzerantwortzeichenfolge ab.

Syntax

NTSYSAPI ULONG DbgPrompt(
  [in]  PCCH  Prompt,
  [out] PCH   Response,
        ULONG Length
);

Parameter

[in] Prompt

Ein Zeiger auf eine NULL-beendete konstante Zeichenfolge, die vom Debugger als Benutzeraufforderung angezeigt wird. Die maximale Größe dieser Zeichenfolge beträgt 512 Zeichen.

[out] Response

Ein Zeiger auf einen Zeichenarraypuffer, der die Antwort des Benutzers empfängt, einschließlich eines endenden Zeilenumbruchzeichens. Die maximale Größe dieses Puffers beträgt 512 Zeichen.

Length

Die Größe des Puffers in Zeichen, der die Antwort des Benutzers empfängt. Diese Größe ist die maximale Anzahl von Zeichen, die die Routine zurückgibt.

Rückgabewert

DbgPrompt gibt die Anzahl der Zeichen zurück, die der Antwortpuffer empfangen hat, einschließlich des zeilenumbruchenden Endzeichens. DbgPrompt gibt null zurück, wenn keine Zeichen empfangen werden.

Hinweise

Die DbgPrompt-Routine zeigt die angegebene Eingabeaufforderungszeichenfolge auf dem Anzeigegerät des Kerneldebuggers an und liest dann eine Zeile mit Benutzereingabetext.

Nach der Rückgabe von DbgPrompt enthält der Antwortpuffer die Antwort des Benutzers, einschließlich des Zeilenumbruchzeichens zum Beenden. Die Benutzerantwortzeichenfolge ist nicht NULL-beendet.

Im folgenden Codebeispiel wird gefragt, ob der Benutzer fortfahren möchte, und akzeptiert den Buchstaben "y" für ja und den Buchstaben "n" für nein.

CHAR Response[2];
BOOLEAN Continue = FALSE;
ULONG CharCount;
for (;;) {
 CharCount = DbgPrompt(
  "Do you want to continue? (Type y or n, then type Enter.) ",
  Response,
  sizeof(Response)
  );

 if (CharCount == 2) {
 if (Response[0] == 'y') {
  Continue = TRUE;
  break;
  } else if (Response[0] == 'n') {
  break;
     }
    }

    //
    // Incorrect response. Display the prompt again.
    //
}

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntddk.h (include Ntddk.h)
Bibliothek NtDll.lib (Benutzermodus); NtosKrnl.lib (Kernelmodus)
DLL NtDll.dll (Benutzermodus); NtosKrnl.exe (Kernelmodus)
IRQL <= DIRQL