Commandes de débogage
Introduction
PureBasic runtime debugger est un programme externe contrôlant l'exécution du programme. Les paramètres passés aux fonctions sont contrôlés en temps réel, les opérations interdites évitées (comme une division par zéro) et plus encore. Avec PureBasic, l'exécution peut être stoppée, analysée pas à pas pour localiser les erreurs. Le programme peut être interrompu à tout instant ! Cela peut être très utile lorsque le programme arrive dans une boucle infinie. De plus il est possible de tracer toutes les variables y compris les registres ASM si la fonction de validation ASM en ligne est activée dans les options de compilations.
Fonctions
Stop
Arrête l'exécution et affiche la position courante dans le code.Cont
Continue l'exécution d'un programme préalablement stoppé.Step
Ce bouton permet d'exécuter le code ligne-à-ligne. C'est une aide précieuse pour l'analyse des erreurs.Asm
Affiche une fenêtre de contrôle ASM avec les registres et les indicateurs CPU. Il s'agit d'une aide pour les programmeurs avancés ayant une connaissance du langage ASM. La fonction ASM en ligne doit être validée dans les options de compilation et le débogueur doit être stoppé (Stop ou Step) pour accéder à cette fenêtre. Cet outil de contrôle est utile pour l'analyse de codes ASM en ligne, mais pas pour le code basic standard. Une fonction pratique est la possibilité de modifier à la volée le contenu d'un registre en utilisant le bouton 'Write New Value'.Show variables
Affiche une fenêtre montrant toutes les variables globales utilisées dans le programme. Le contenu des variables est rafraîchi en temps réel pour permettre un suivi facile de l'exécution du programme.Show Output Window
Affiche une fenêtre qui montre le contenu de sortie de la commande Debug.Exit
Cette fonction sort du débogueur, du compilateur et de tout programme en cas de problème (par exemple d'une boucle infinie ne permettant de sortir normalement).
Mots clefs du débogueur en PureBasic
SyntaxDescriptionCallDebuggerAppel du "débogueur" et arrêt immédiat du programme au point courant du code.
SyntaxDescriptionDebug <expression> [, NiveauDebug]Affiche la fenêtre DebugOutput et le résultat correspondant. L'expression peut être toute expression valide en PureBasic, de forme numérique ou chaine. Un point important est que toute commande Debug et les expressions associées sont totalement ignorées (non compilées) si le débogueur est désactivé. Cela singifie qu'il n'est pas nécessaire de passer les instruction Debug en commentaires lors de la création de l'exécutable final tout en ayant la possibilité de tracer facilement l'exécution du programme pour le développeur.
'NiveauDebug' est le niveau de priorité des messages du débogueur. Tous les messages (avec un niveau non spécifié) sont affichés automatiquement. Lorsqu'un niveau est spécifié alors le message correspondant ne sera affiché que si le niveau de debug courant est égal ou supérieur au niveau associé au message. Cela permet de réaliser une traçabilité hiérarchisée en affichant des informations de plus en plus précises en fonction de la valeur 'NiveauDebug' utilisée.
SyntaxDescriptionDebugLevel <constant expression>Fixe le niveau courant pour les messages 'Debug'.
Note: Le niveau est fixé au moment de la compilation, ce qui signifie que vous devez mettre la commande DebugLevel avant les commandes debug pour être sûr qu'elles seront bien toutes affectées.
SyntaxDescriptionDisableDebuggerInterrompt l'utilisation du débogueur sur les lignes du code qui suivent cette commande.
SyntaxDescriptionEnableDebuggerActive l'utilisation du débogueur sur les lignes de code qui suivent cette commande (lorsque le débogueur a été préalablement interrompu par la commande DisableDebugger).