Compartir a través de


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 solicitud 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.

Observaciones

La rutina de DbgPrompt muestra la cadena de solicitud 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.

Después de dbgPrompt devuelve, el búfer de respuesta de 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 Valor
de la plataforma de destino de Universal
encabezado de ntddk.h (incluya Ntddk.h)
biblioteca de NtDll.lib (modo de usuario); NtosKrnl.lib (modo kernel)
DLL de NtDll.dll (modo de usuario); NtosKrnl.exe (modo kernel)
irQL <= DIRQL