Comunicación con el depurador
La función OutputDebugString envía una cadena del proceso que se está depurando al depurador mediante la generación de un evento de depuración OUTPUT_DEBUG_STRING_EVENT. Un proceso puede detectar si se está depurando mediante una llamada a la función IsDebuggerPresent .
La función DebugBreak provoca una excepción de punto de interrupción en el proceso actual. Un punto de interrupción es una ubicación en un programa en el que se detiene la ejecución para permitir que el desarrollador examine el código, las variables y los valores de registro del programa y, según sea necesario, para realizar cambios, continuar la ejecución o finalizar la ejecución.
La función FatalExit finaliza el proceso actual y proporciona control de ejecución al depurador, pero a diferencia de DebugBreak, no genera una excepción. Esta función solo debe usarse como último recurso, ya que no siempre libera la memoria del proceso ni cierra sus archivos.