Débogage d'un programme Basic

Points d'arrêt et exécution étape par étape

Pour vérifier l'absence d'erreur dans chaque ligne de votre programme Basic, vous pouvez utiliser l'exécution étape par étape. Les erreurs sont faciles à identifier puisque le résultat de chaque étape s'affiche immédiatement. Dans la colonne des points d'arrêt de l'éditeur, un pointeur désigne la ligne active. Vous pouvez également définir un point d'arrêt pour forcer le programme à s'interrompre à un certain endroit.

Double-cliquez dans la colonne des points d'arrêt, à gauche de la fenêtre de l'éditeur, pour activer et désactiver un point d'arrêt sur une certaine ligne. Lorsque le programme atteint un point d'arrêt, son exécution est interrompue.

Lorsque l'exécution étape par étape, lancée au moyen de l'icône Étape par étape, est utilisée, le programme exécute chacune des instructions contenues dans les procédures et les fonctions.

Lorsque l'exécution étape de procédure lancée au moyen de l'icône Étape de procédure est utilisée, le programme passe d'une procédure à une autre en une seule étape.

Propriétés d'un point d'arrêt

Les propriétés d'un point d'arrêt sont présentées dans le menu contextuel de celui-ci. Pour afficher ce menu, cliquez avec le bouton droit de la souris sur le point d'arrêt, dans la colonne des points d'arrêt.

Vous pouvez activer et désactiver un point d'arrêt en cochant et décochant l'option Actif à partir du menu contextuel. Lorsqu'un point d'arrêt est désactivé, il n'interrompt pas l'exécution du programme.

Sélectionnez Propriétés dans le menu contextuel d'un point d'arrêt, ou sélectionnez Points d'arrêt dans le menu contextuel de la colonne des points d'arrêt, pour afficher la boîte de dialogue Points d'arrêt permettant de spécifier d'autres options relatives aux points d'arrêt.

La liste affiche tous les points d'arrêt existants, ainsi que le numéro de la ligne de code correspondante. Vous pouvez activer ou désactiver un point d'arrêt sélectionné en cochant ou décochant la case Actif.

La zone Adaptation spécifie le nombre de fois que le point d'arrêt peut être passé avant de provoquer l'interruption du programme. Si vous saisissez 0 (paramètre par défaut), le programme s'interrompt dès qu'il rencontre ce point d'arrêt.

Cliquez sur Supprimer pour effacer le point d'arrêt du programme.

Observation des valeurs des variables

Vous pouvez surveiller les valeurs d'une variable en insérant cette variable dans la fenêtre Témoin. Pour ajouter une variable à la liste des variables observées, saisissez son nom dans la zone de texte Témoin, puis appuyez sur Entrée.

Les valeurs des variables ne s'affichent que si elles sont comprises dans la portée. Les variables non définies à l'emplacement du code source actif affichent, au lieu d'une valeur, la mention ("Out of Scope") indiquant qu'elles sont hors de portée.

Vous pouvez également insérer des matrices dans la fenêtre Témoin. Si vous saisissez le nom d'une variable de matrice sans valeur d'index dans la zone de texte Témoin, le contenu complet de la matrice s'affiche.

Icône Astuce

Si vous laissez le pointeur de la souris sur une variable prédéfinie dans l'éditeur au moment de l'exécution, le contenu de cette variable s'affiche dans une zone contextuelle.


Utilisation de la fenêtre Appels

Affiche une présentation hiérarchique des appels des procédures et des fonctions. Vous pouvez déterminer les procédures et les fonctions devant appeler d'autres procédures et fonctions à l'emplacement actif du code source.

Liste des erreurs d'exécution

1 une exception est survenue

2 erreur de syntaxe

3 Return sans Gosub

4 saisie incorrecte ; veuillez recommencer

5 appel de procédure incorrect

6 Débordement

7 mémoire insuffisante

8 matrice déjà dimensionnée

9 Index en dehors de la plage définie

10 Définition doublée

11 Division par zéro

12 variable non définie

13 le type de données ne correspond pas

14 paramètre incorrect

18 processus interrompu par l'utilisateur

20 reprendre sans erreur

28 pile mémoire insuffisante

35 sous procédure ou procédure de fonction non définie

48 erreur lors du chargement du fichier DLL

49 mauvaise convention d'appel de DLL

51 erreur interne

52 nom ou numéro de fichier incorrect

53 fichier non trouvé

54 mode de fichier incorrect

55 Fichier déjà ouvert

57 erreur E/S de périphérique

58 le fichier existe déjà

59 longueur d'enregistrement incorrecte

61 disque ou disque dur plein

62 la lecture dépasse EOF

63 numéro d'enregistrement incorrect

67 trop de fichiers

68 périphérique non disponible

70 accès refusé

71 disque non prêt

73 non implémenté

74 renommage sur des disques différents impossible

75 erreur d'accès au fichier/chemin

76 chemin non trouvé

91 variable d'objet non définie

93 motif de chaîne incorrect

94 Utilisation de zéro non permise

250 erreur DDE

280 en attente d'une réponse de la connexion DDE

281 aucun canal DDE disponible

282 aucune application ne répond à l'initialisation de connexion DDE

283 trop d'applications répondent à l'initialisation de connexion DDE

284 canal DDE verrouillé

285 l'application externe ne peut pas exécuter l'opération DDE

286 délai d'attente dépassé lors de l'attente de la réponse DDE

287 l'utilisateur à appuyé sur ESC pendant l'opération DDE

288 l'application externe est occupée

289 opération DDE sans données

290 les données ne sont pas dans le bon format

291 l'application externe a été arrêtée

292 connexion DDE interrompue ou modifiée

293 méthode DDE invoquée sans ouverture de canal

294 format de lien DDE incorrect

295 le message DDE a été perdu

296 copie du lien déjà exécutée

297 le mode du lien ne peut pas être défini en raison d'un sujet de lien incorrect

298 DDE nécessite le fichier DDEML.DLL

323 le module ne peut être chargé ; format incorrect

341 index d'objet incorrect

366 l'objet n'est pas disponible

380 valeur de propriété incorrecte

382 cette propriété est en lecture seule

394 cette propriété est en écriture seule

420 référence d'objet invalide

423 propriété ou méthode introuvable

424 Objet requis

425 usage incorrect d'un objet

430 l'automation OLE n'est pas prise en charge par cet objet

438 cette propriété ou méthode n'est pas prise en charge par l'objet

440 erreur d'automatisation OLE

445 cette action n'est pas prise en charge par l'objet donné

446 les arguments nommés ne sont pas pris en charge par l'objet donné

447 le paramètre linguistique actuel n'est pas pris en charge par l'objet donné

448 argument nommé non trouvé

449 l'argument n'est pas facultatif

450 nombre d'arguments incorrect

451 l'objet n'est pas une liste

452 nombre ordinal incorrect

453 fonction DLL spécifiée non trouvée

460 format de presse-papiers incorrect

951 symbole inattendu :

952 attendu :

953 symbole attendu

954 variable attendue

955 étiquette attendue

956 la valeur ne peut pas être appliquée

957 variable déjà définie

958 sous procédure ou procédure de fonction déjà définie

959 étiquette déjà définie

960 variable non trouvée

961 matrice ou procédure non touvée

962 procédure non trouvée

963 étiquette non définie

964 type de donné inconnu

965 sortie attendue

966 block d'instruction toujours ouvert : manquant

967 les parenthèses ne correspondent pas

968 symbole déjà défini différemment

969 les paramètres ne correspondent pas à la procédure

970 caractère invalide dans le nombre

971 la matrice doit être dimensionnée

972 Else/Endif sans If

973 non permis à l'intérieur d'une procédure

974 non permis en dehors d'une procédure

975 les spécifications de dimension ne correspondent pas

976 option inconnue :

977 constante redéfinie

978 programme trop grand

979 chaînes ou matrices non permises

1000 l'objet n'a pas cette propriété

1001 l'objet n'a pas cette méthode

1002 argument requis manquant

1003 nombre d'arguments incorrect

1004 erreur lors de l'exécution d'une méthode

1005 impossible de définir la proprété

1006 impossible de déterminer la propriét