le débogueur plante et le logiciel que je fais aussi.

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

Bonjour, après plusieurs mois à faire un programme de calcul de soudure. il me reste trois chose à faire dont la lecture du fichier licence encodé. Mais plus rien ne va. J'ai déplacé la routine Decode au début du programme parce que le compilateur me disait toujours que je n'avais pas initialiser correctement le fichier numero 0. Je sais que ce genre d'erreur est habituellement une faute majeure ou quelques choses de stupide. Je vais penché pour la stupidité.

voici un lien vers une dropbox avec les différents programmes...

https://www.dropbox.com/sh/4a3z2jhx8g1c ... GE18a?dl=0

Merci de votre aide.... le code source pour Decode m'a été donné par quelqu'un du site....

Yves
Yves Rossignol
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

J'essai de compiler et d'executer et tout plante et disparait de l'écran.... et j'ai rebooter ma machine au cas ou...

Yves
Yves Rossignol
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

J'ai mis aussi welds1 qui fait planté tout tout tout... ligne 2972 à 2999 environ...

yves
Yves Rossignol
Avatar de l’utilisateur
Zorro
Messages : 2186
Inscription : mar. 31/mai/2016 9:06

Re: le débogueur plante et le logiciel que je fais aussi.

Message par Zorro »

YvesRossignol a écrit : voici un lien vers une dropbox avec les différents programmes...

https://www.dropbox.com/sh/4a3z2jhx8g1c ... GE18a?dl=0
Erreur 404 sur le lien !
Merci de votre aide.... le code source pour Decode m'a été donné par quelqu'un du site....Yves
Qui ? est t'il tant innommable que ça ?
le compilateur me disait toujours que je n'avais pas initialiser correctement le fichier numero 0
avant d'ouvrir un fichier a tu bien fermé les autres (qui pourrai avoir le meme numero ) ??

ça ressemble bien a une erreur d'attribution d'ID , par enumération double
ou carrement par méconnaissance sur le fait qu'on puisse utiliser autre chose que "0" pour ouvrir un fichier ....

tu peux en effet ouvrir et traiter plusieurs fichier a condition que chaque fichier ait son propre ID

par exemple pour 2 fichiers ouvert:

Code : Tout sélectionner

Enumeration
		#File1
		#File2
EndEnumeration

OpenFile(#File1, "toto.txt")
		WriteStringN(#file1,"coucou")		
		OpenFile(#File2, "toto2.txt")
				WriteStringN(#file2,"coucou2")
		CloseFile(#file2)
CloseFile(#file1)
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: le débogueur plante et le logiciel que je fais aussi.

Message par Marc56 »

YvesRossignol a écrit :... je n'avais pas initialiser correctement le fichier numero 0. Je sais que ce genre d'erreur est habituellement une faute majeure ou quelques choses de stupide
Contre la fatigue et donc l'inattention:
1. Toujours EnableExplicit en début de code car on a vite fait de faire une faute de frappe 0 et O.
2. Éviter d'utiliser zéro pour les identifiants, car zéro est aussi le chiffre retourné si rien ne s'est passé dans une fonction ou si une variable n'a pas bougée.
3. Utiliser les Enumérations ou des variables pour les identifiants de gadgets ou les handles de fichiers, pas de numéros directs.

(le lien DropBox ne fonctionne pas)

:wink:
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

Yves Rossignol
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

Le code source de Decode a été fourni par Zorro. Je m'excuse de l'avoir oublié

Yves
Yves Rossignol
Mesa
Messages : 1126
Inscription : mer. 14/sept./2011 16:59

Re: le débogueur plante et le logiciel que je fais aussi.

Message par Mesa »

Tout fonctionne bien sous XP32.

J'ai déjà vu ce genre de panne, c'était toujours l'antivirus. Tout allait bien puis du jour au lendemain, le déboggeur se bloquait puis le programme avec un faux positif.
Une piste à suivre...

M.
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: le débogueur plante et le logiciel que je fais aussi.

Message par falsam »

Désactive ton Antivirus car je pense que tu n'as pas exclu PureBasic.

Ton code fonctionne parfois et chaque fois qu'il y a une erreur J'ai l'impression que c'est lié à ton fichier welds.txt.

Au premier lancement de ton appli il y a un plantage car tu cherches à l'ouvrir sans tester son existence. IsFile() est pratique crois moi ^^.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: le débogueur plante et le logiciel que je fais aussi.

Message par Marc56 »

:!: IsFile() est une fonction trompeuse: elle ne teste que l’initialisation correcte de l'objet.

Pour tester l’existence d'un fichier, sans avoir besoin de lui mettre un handle, il faut utilise FileSize()

Qui retourne:
> 0 = Le Fichier Existe
-1 = Fichier Inexistant
-2 = C'est un Répertoire

:wink:
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

Est-ce qu'on peut avoir des fichiers encore ouvert après un plantage? et comment fait-on pour s'assurer que tout est fermé au début d'un programme

Yves
Yves Rossignol
Marc56
Messages : 2198
Inscription : sam. 08/févr./2014 15:19

Re: le débogueur plante et le logiciel que je fais aussi.

Message par Marc56 »

YvesRossignol a écrit :Est-ce qu'on peut avoir des fichiers encore ouvert après un plantage?
Si le programme planté reste actif, les fichiers qu'il a ouvert en mode écriture (en mode exclusif) et non fermés sont verrouillés (par le système) comme pour tout autre programme.
D'une manière générale il vaut mieux ouvrir et fermer le plus vite possible tout fichier de données.

Pour éviter ça (BSOD sur certains OS) ou message "Le programme ne répond plus" il est essentiel de traquer tout (écritures/ouvertures) à l'aide des fonctions IsXxxx et FileSize()

:idea: Une 'trappe' générale peut aussi être utile pour gérer le reste.
Perso, je commence mes programmes par

Code : Tout sélectionner

EnableExplicite

OnErrorGoto(?Global_Error)
et termine par

Code : Tout sélectionner

Global_Error:
MessageRequester("Error", ErrorMessage(), 16)
Pour ne pas avoir de message de warning lors du débug, je met:

Code : Tout sélectionner

If CountProgramParameters() = 0
    OnErrorGoto(?Global_Error)
EndIf
(en mode développement j'ajoute des paramètres (au gestionnaire de projet) pour activer ou non certaines fonctions)

YvesRossignol a écrit :et comment fait-on pour s'assurer que tout est fermé au début d'un programme
Préférences > Débogueur

[X] Arrêter l'exécution au démarrage du programme (normalement si le programme principale se ferme, les dépendance se ferme aussi)

[X] Arrêter le programme après une erreur

Mais il peut être intéressant de ne pas cocher la deuxième option, car on peut alors vérifier l'état des variaables (simplement en passant le curseur au dessus de chaque variable dans code source) et aussi utiliser Débogueur > Voir les variables. Ceci n'est plus possible si on arrête le programme avec le bouton d'arrêt d'urgence (X)
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

Bonjour, j'ai mis Enablexplicite mais je ne sais pas comment je doit déclarer EventID,menuID, etc car le compilateur me dit qu'ils sont déclarés sous un autre forme ailleur....

per ardua ad astra


par les difficultés jusqu'aux étoiles....

j'ai commandé un camion d'antidépresseur.... ça doit être une stupidité..... mais je ne la trouve pas.

Yves
Yves Rossignol
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

En mettant enablexplicite.... j'ai tracké les variables non déclaré, je compile, y marche mais j'ai enlevé des lignes avec des ;.... on continue, en déclarant certaines variables, il semble fonctionner.

je me commande deux caisses de lampions.....

Yves :?
Yves Rossignol
YvesRossignol
Messages : 133
Inscription : lun. 28/mars/2016 19:09

Re: le débogueur plante et le logiciel que je fais aussi.

Message par YvesRossignol »

et non ça ne marche pas encore, je vais mettre une énumération pour chaque fichier ouvert.....

Yves
Yves Rossignol
Répondre