gn, gN (Go avec l’exception non gérée)
Les commandes gn et gN continuent l’exécution du thread donné sans marquer l’exception comme ayant été gérée. Cela permet au gestionnaire d’exceptions de l’application de gérer l’exception.
syntaxe User-Mode
[~Thread] gn[a] [= StartAddress] [BreakAddress ... [; BreakCommands]]
[~Thread] gN[a] [= StartAddress] [BreakAddress ... [; BreakCommands]]
syntaxe Kernel-Mode
gn[a] [= StartAddress] [BreakAddress ... [; BreakCommands]]
gN[a] [= StartAddress] [BreakAddress ... [; BreakCommands]]
Paramètres
Fil
(Mode utilisateur uniquement) Spécifie le thread à exécuter. Ce thread doit avoir été arrêté par une exception. Pour plus d’informations sur la syntaxe, consultez Syntaxe de thread.
Un
Fait en sorte que tout point d’arrêt créé par cette commande soit un point d’arrêt du processeur (comme ceux créés par ba) plutôt qu’un point d’arrêt logiciel (comme ceux créés par bp et bm). Si BreakAddress n’est pas spécifié, aucun point d’arrêt n’est créé et l’indicateur n’a aucun effet.
StartAddress
Spécifie l’adresse où l’exécution doit commencer. Si ce n’est pas spécifié, le débogueur transmet l’exécution à l’adresse où l’exception s’est produite. Pour plus d’informations sur la syntaxe, consultez Syntaxe d’adresse et de plage d’adresses.
BreakAddress
Spécifie l’adresse d’un point d’arrêt. Si BreakAddress est spécifié, il doit spécifier une adresse d’instruction (autrement dit, l’adresse doit contenir le premier octet d’une instruction). Jusqu’à dix adresses d’arrêt, dans n’importe quel ordre, peuvent être spécifiées à la fois. Si BreakAddress ne peut pas être résolu, il est stocké en tant que point d’arrêt non résolu. Pour plus d’informations sur la syntaxe, consultez Syntaxe d’adresse et de plage d’adresses.
BreakCommands
Spécifie une ou plusieurs commandes à exécuter automatiquement lorsque le point d’arrêt spécifié par BreakAddress est atteint. Le paramètre BreakCommands doit être précédé d’un point-virgule. Si plusieurs valeurs BreakAddress sont spécifiées, BreakCommands s’applique à toutes.
Note Le paramètre BreakCommands n’est disponible que lorsque vous incorporez cette commande dans une chaîne de commande utilisée par une autre commande, par exemple, dans une autre commande de point d’arrêt ou dans un paramètre d’événement except ou . Sur une ligne de commande, le point-virgule arrête la commande, et toutes les commandes supplémentaires répertoriées après le point-virgule sont exécutées immédiatement après l’exécution de la commande gn ou gN .
Environnement
Élément | Description |
---|---|
Modes | mode utilisateur, mode noyau |
Targets | débogage en direct uniquement |
Plateformes | all |
Informations supplémentaires
Pour obtenir d’autres méthodes d’émission de cette commande et une vue d’ensemble des commandes associées, consultez Contrôle de la cible.
Remarques
Si le débogueur n’est pas arrêté à un point d’arrêt, gn et gN se comportent de façon identique. Si le débogueur est arrêté à un point d’arrêt, gn ne fonctionne pas ; vous devez mettre en majuscules « N » pour exécuter cette commande. Il s’agit d’une précaution de sécurité, car il est rarement sage de poursuivre un point d’arrêt non pris en charge.
Si vous utilisez le paramètre BreakAddress pour définir un point d’arrêt, ce nouveau point d’arrêt est déclenché uniquement par le thread actuel. Les autres threads qui exécutent le code à cet emplacement ne sont pas arrêtés.
Si Thread est spécifié, la commande gn est exécutée avec le thread spécifié et tous les autres sont figés. Par exemple, si la commande ~123gn, ~#gn ou ~*gn est spécifiée, les threads spécifiés sont dégelés et tous les autres sont figés.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour