Freigeben über


DbgPrompt-Funktion (ntddk.h)

Die DbgPrompt Routine zeigt eine vom Aufrufer angegebene Benutzeraufforderungszeichenfolge 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 MIT NULL beendete Konstantenzeichenfolge, die der Debugger als Benutzeraufforderung anzeigt. 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 beendeten Neuenlinezeichens. Die maximale Größe dieses Puffers beträgt 512 Zeichen.

Length

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

Rückgabewert

DbgPrompt- gibt die Anzahl der Zeichen zurück, die der Antwortpuffer empfangen hat, einschließlich des endenden Neuzeilenzeichens. DbgPrompt- gibt Null zurück, wenn keine Zeichen empfangen werden.

Bemerkungen

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

Nachdem DbgPrompt- zurückgegeben wurde, enthält der puffer Antwort- die Antwort des Benutzers, einschließlich des endenden Neuenlinezeichens. Die Zeichenfolge für die Benutzerantwort ist nicht NULL beendet.

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

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- Universal
Header- ntddk.h (include Ntddk.h)
Library NtDll.lib (Benutzermodus); NtosKrnl.lib (Kernelmodus)
DLL- NtDll.dll (Benutzermodus); NtosKrnl.exe (Kernelmodus)
IRQL- <= DIRQL