Función DbgPrompt (ntddk.h)

La rutina DbgPrompt muestra una cadena de solicitud de usuario especificada por el autor de la llamada en el dispositivo de visualización del depurador de kernel y obtiene una cadena de respuesta del usuario.

Sintaxis

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

Parámetros

[in] Prompt

Puntero a una cadena de caracteres constantes terminada en NULL que el depurador mostrará como un mensaje de usuario. El tamaño máximo de esta cadena es de 512 caracteres.

[out] Response

Puntero a un búfer de matriz de caracteres que recibe la respuesta del usuario, incluido un carácter de nueva línea de terminación. El tamaño máximo de este búfer es de 512 caracteres.

Length

Tamaño, en caracteres, del búfer que recibe la respuesta del usuario. Este tamaño es el número máximo de caracteres que devolverá la rutina.

Valor devuelto

DbgPrompt devuelve el número de caracteres que recibió el búfer de respuesta , incluido el carácter de nueva línea de terminación. DbgPrompt devuelve cero si no recibe caracteres.

Comentarios

La rutina DbgPrompt muestra la cadena de aviso especificada en el dispositivo de visualización del depurador de kernel y, a continuación, lee una línea de texto de entrada del usuario.

Una vez devuelto DbgPrompt , el búfer de respuesta contiene la respuesta del usuario, incluido el carácter de nueva línea de terminación. La cadena de respuesta del usuario no está terminada en NULL.

En el ejemplo de código siguiente se pregunta si el usuario quiere continuar y acepta la letra "y" para sí y la letra "n" para no.

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.
    //
}

Requisitos

Requisito Value
Plataforma de destino Universal
Encabezado ntddk.h (incluya Ntddk.h)
Library NtDll.lib (modo de usuario); NtosKrnl.lib (modo kernel)
Archivo DLL NtDll.dll (modo de usuario); NtosKrnl.exe (modo kernel)
IRQL <= DIRQL