Compartir a través de


gn, gN (Ir con excepción no controlada)

Los comandos gn y gNcontinúan la ejecución del subproceso determinado sin marcar la excepción como controlada. Esto permite que el controlador de excepciones de la aplicación controle la excepción.

Sintaxis de User-Mode

[~Thread] gn[a] [= StartAddress] [BreakAddress ... [; BreakCommands]] 
[~Thread] gN[a] [= StartAddress] [BreakAddress ... [; BreakCommands]] 

Sintaxis de Kernel-Mode

gn[a] [= StartAddress] [BreakAddress ... [; BreakCommands]] 
gN[a] [= StartAddress] [BreakAddress ... [; BreakCommands]] 

Parámetros

Hilo
(Solo modo usuario) Especifica el subproceso que se va a ejecutar. Este subproceso debe haber sido detenido por una excepción. Para obtener más información sobre la sintaxis, consulte Sintaxis de subprocesos.

Un
Hace que cualquier punto de interrupción creado por este comando sea un punto de interrupción del procesador (como los creados por ba) en lugar de un punto de interrupción de software (como los creados por bp y bm). Si no se especifica BreakAddress , no se crea ningún punto de interrupción y la marca no tiene ningún efecto.

StartAddress
Especifica la dirección en la que debe comenzar la ejecución. Si no se especifica, el depurador pasa la ejecución a la dirección donde se produjo la excepción. Para obtener más detalles de sintaxis, vea Sintaxis de intervalo de direcciones y direcciones.

BreakAddress
Especifica la dirección de un punto de interrupción. Si se especifica BreakAddress , debe especificar una dirección de instrucción (es decir, la dirección debe contener el primer byte de una instrucción). Se pueden especificar hasta diez direcciones de interrupción, en cualquier orden, al mismo tiempo. Si BreakAddress no se puede resolver, se almacena como un punto de interrupción sin resolver. Para obtener más detalles de sintaxis, vea Sintaxis de intervalo de direcciones y direcciones.

BreakCommands
Especifica uno o varios comandos que se ejecutarán automáticamente cuando se alcance el punto de interrupción especificado por BreakAddress . El parámetro BreakCommands debe ir precedido de un punto y coma. Si se especifican varios valores BreakAddress , BreakCommands se aplica a todos ellos.

Nota El parámetro BreakCommands solo está disponible cuando se inserta este comando dentro de una cadena de comandos utilizada por otro comando, por ejemplo, dentro de otro comando de punto de interrupción o dentro de una configuración excepto o de evento. En una línea de comandos, el punto y coma finalizará el comando y los comandos adicionales enumerados después del punto y coma se ejecutarán inmediatamente después de que se realice el comando gn o gN .

Entorno

Elemento Descripción
Modos modo de usuario, modo kernel
Targets Solo depuración dinámica
Plataformas todo

Información adicional

Para conocer otros métodos de emisión de este comando y una introducción a los comandos relacionados, consulte Controlling the Target (Controlar el destino).

Comentarios

Si el depurador no se detiene en un punto de interrupción, gn y gN se comportan de forma idéntica. Si el depurador se detiene en un punto de interrupción, gn no funcionará; Debe escribir en mayúsculas el "N" para ejecutar este comando. Esta es una precaución de seguridad, ya que rara vez es aconsejable continuar con un punto de interrupción no controlado.

Si usa el parámetro BreakAddress para establecer un punto de interrupción, el subproceso actual solo desencadenará este nuevo punto de interrupción. No se detendrán otros subprocesos que ejecuten el código en esa ubicación.

Si se especifica Thread , el comando gn se ejecuta con el subproceso especificado desfrozen y todos los demás inmovilizados. Por ejemplo, si se especifica el comando ~123gn, ~#gn o ~*gn , los subprocesos especificados se desconectan y todos los demás se inmovilizan.