FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Button_picture
par pascal10000 Aujourd'hui à 11:41

» Pourquoi le compilateur stagne
par Minibug Aujourd'hui à 11:09

» 4 (en analyse): SYNEDIT_TARGET_IS_OBJECT devient inactif
par Jack Aujourd'hui à 10:09

» 3 (en analyse): Mauvaise interprétation du string "THEN"
par Jack Aujourd'hui à 10:03

» KGF.dll - demandes ou suggestions de modifications ou ajouts
par Marc Aujourd'hui à 10:00

» KGF_dll - nouvelles versions
par pascal10000 Hier à 17:27

» Mah-Jong européen new-look
par Minibug Mar 12 Déc 2017 - 22:31

» track_bar circulaire
par Klaus Mar 12 Déc 2017 - 13:54

» API Windows
par Klaus Mar 12 Déc 2017 - 3:21

» Cartes de voeux, menus, etc.
par JL35 Lun 11 Déc 2017 - 17:48

» a l'aide klaus
par Minibug Lun 11 Déc 2017 - 11:42

» bug SYNEDIT_TARGET_IS_OBJECT
par Jack Lun 11 Déc 2017 - 0:16

» Jukebox : Serge Reggiani
par papydall Sam 9 Déc 2017 - 5:58

» Ecouter la radio fm sur votre pc
par pascal10000 Sam 9 Déc 2017 - 3:42

» anomalie
par Klaus Sam 9 Déc 2017 - 3:21

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier

Partagez | 
 

 plantage au milieu des 3000 lignes...

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Minibug

avatar

Nombre de messages : 2412
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 5:37

Gros probleme avec mon programme gpp

Je vous joints un photo. Avez vous une idée ?

J'ai l'impression que l'erreur se déplace le lon du programme.
Bon il est trop tard pour rechercher maintenant

Je suis dégouté ! silent

[img][/img]
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
papydall

avatar

Nombre de messages : 5613
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 5:53

Je pense que tu as un SUB qui n'a pas son END_SUB correspondant.
Vérifie qu'il y a autant de SUBs que de END_SUBs.

Et surtout ne soit pas dégoûté !
On apprend plus de nos erreurs que de nos succès.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Minibug

avatar

Nombre de messages : 2412
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 11:56

Bonjour papydall !

Merci pour ton conseil, je vais tenter de regarder cela pale
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Pedro Alvarez

avatar

Nombre de messages : 882
Date d'inscription : 19/01/2014

MessageSujet: Plantage.   Lun 15 Fév 2016 - 12:03

Bonjour.

Cette erreur intervient lorsqu'on tente d'accéder à un élément d'un objet List ou Dlist au-delà du nombre de ses éléments.
J'ai déjà eu affaire à ce genre d'erreur.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5613
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 12:22

Erreurs provoquées :

Code:

list 10 : item_add 10,"Un seul article"
print item_read$(10,1)
print item_read$(10,2) : ' <----- Indice de liste hors limites
end
SUB Truc()
    print "SUB doit être terninée par END_SUB"
' END_SUB : ' <----- Indice de liste hors limites
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Invité
Invité



MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 12:44

Pour ce qui est de l'indice -1, je ne sais plus.
Mais on peut aussi avoir une idée plus précise:

Code:


list 1:item_add 1,1:item_add 1,2 :color 1,255,255,100


teste():' déplacez cette ligne, puis testez.
end
sub teste()
 message item_read$(1,3)
' end_sub

Lorsqu'on fait appel à une liste dont on a dépassé l'indice, le nombre obtenu dans celui-ci est le nombre d'élément de la liste.

Si dans l'exemple de ce code, vous déplacez la ligne: "teste()", vous verrez que le nombre donné dans l'indice est celui de la ligne où cet appel est donné.
Revenir en haut Aller en bas
Minibug

avatar

Nombre de messages : 2412
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 14:42

Bonjour a tous !

Merci pour vos réponses. Wink

Je viens de reprendre le programme par un backup sur mon WEBDAV sur un autre PC.
Après quelques recherches et modifications suite a vos remontés, tout fonctionne de nouveau.

J'avais effectivement un problème de SUB-END_SUB et aussi un problème dans un DLIST ou LIST
Il ne me reste plus qu'a tout sauvegarder de nouveau et refaire le test sur mon PC habituel de soir.

Encore merci pour votre rapidité.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
silverman

avatar

Nombre de messages : 475
Age : 45
Localisation : Picardie
Date d'inscription : 19/03/2015

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 14:43

bonjour à tous

@minibug
j'ai déposé sur mon webdav un outils en version alpha que je développe:pano_debug.
Cette version actuelle te donne le dernier numéro de ligne éxécuté avant plantage, ainsi que le nom du fichier incriminé(source principal ou include).
Le fonctionnement est simple: fichier---> ouvrir, puis executer---> run.
Dès que le programme à débuguer s'arrete, ferme le. Alors un message apparait avec nom de fichier+n° ligne+contenu de variable.

Il y a possibilité de connaitre le contenu de qq variables, mais seulement sur le numéro de ligne qui cause le plantage, il suffit de modifier le contenu du mémo; Exemple avec un fichier de test "fenetre clignote.bas" qui plantait à la ligne 49:

SPY_("fenetre clignote.bas","49") : debug_spy_var(adr(0),adr(0),adr(0),adr(0),adr(0),adr(0)) :     WRITE_BUFFER_DWORD( pFLASHWINFO% , 16 , dwTimeout% )

devient:

SPY_("fenetre clignote.bas","49") : debug_spy_var(adr(pFLASHWINFO%),adr(dwTimeout%),adr(0),adr(0),adr(0),adr(0)) :     WRITE_BUFFER_DWORD( pFLASHWINFO% , 16 , dwTimeout% )

c'est rudimentaire et en version alpha, mais j'espere que ça pourra au moins t'aider.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5613
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 20:07

@Minibug

Je suis content pour toi.

Je te donne un «  miniconseil »
A chaque fois où tu commences à coder une SUB(quelque_chose), juste après (et avant toute instruction), ajoute en bas END_SUB.
Ça éviterait bien des désagréments.

@Silverman
J’irai certainement sur ton webdav pour tester pano_debug et merci d'avance pour le partage.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
JL35



Nombre de messages : 6018
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 23:49

Ça c'est un bon (mini)conseil papydall, c'est aussi comme ça que je fais:
SUB()
END_SUB
et après je développe le contenu.
Et pareil pour les sous-programmes d'ailleurs
S/p:
RETURN
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5613
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Lun 15 Fév 2016 - 23:54

Bin woui, les grands esprits se rencontrent ! jocolor
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
JL35



Nombre de messages : 6018
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: plantage au milieu des 3000 lignes...   Mar 16 Fév 2016 - 0:28

T'as raison, on est les meilleurs ! (à part les autres Very Happy )
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Minibug

avatar

Nombre de messages : 2412
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Mar 16 Fév 2016 - 2:42

Bon alors là rien ne va plus ! Mad

J'étais en pleine execution du programme et d'un seul coup : PATATRA !!! l'erreur est revenue.
Du coup au lancement suivant j'ai de nouveau d'erreur ! je n'y comprends rien Suspect

J'au beau tout fermer tout quitter et ouvrir de nouveau éditeur et programme et toujours la même chose.
J'abandonne pour ce soir, a demain... (la nuit porte conseil drunken)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Invité
Invité



MessageSujet: Re: plantage au milieu des 3000 lignes...   Mar 16 Fév 2016 - 3:05

On ne sait jamais. Je viens de faire un p'tit programme pour suivre les lignes, pour comprendre une fonction qui marche mal, et voir.

J'ai mis en marche trace_on vers la partie que je surveille, et je suis les lignes ainsi.

Code:
label fin
full_space 0
dim a,a$,b$ ,v ,w

list 10: file_load 10,"C:\TEMP\PANO\re1_calcul_lig.bas":' emplacement du programme à regarder
list 2 : file_load 2,"Z:\trace.txt" : ' emplacement de trace_on "...." à modifier aussi.
memo 5 : full_space 5 : font_name 5,"Consolas" : font_size 5,10 : font_bold 5 : hide 5 : bar_both 5
on_close 0,fin
for a = 2 to count(2)
   a$ = item_read$(2,a)
   v = instr(a$,"=")
   if v > 0
      a$ = right_pos$(a$,v+1)

      if v > 0
         v = val(a$)
         if v < w then item_add 5, "....."
         item_add 5,right$("   "+str$(v),3) + "|" + item_read$(10,v)
      end_if
   end_if
   w = v
next a
show 5
end

fin:
terminate

Ce doit-être bon, j'ai modifié en direct à cause de mon environnement qui est différent.
Revenir en haut Aller en bas
Klaus

avatar

Nombre de messages : 10259
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: plantage au milieu des 3000 lignes...   Mar 16 Fév 2016 - 4:20

@Minibug:
Es-tu certain de ne pas sortir d'une SUB par un RETURN ou un GOTO, ou de sortir d'une SUB par un GOTO ? C'est une autre source possible de ce genre d'erreur.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: plantage au milieu des 3000 lignes...   Mar 16 Fév 2016 - 16:30

Je me sens obligé de mettre de l'ordre dans mon poste plus haut. Même si ça n'intéresse personne, et c'est normal, je dois donner queques explications.

Dans le programme en teste, il faut mettre a un endroit d'analyse, la fonction: TRON_ON nom_du_fichier.

Ensuite dans mon programme, pour le list 10, il faut mettre le nom du fichier (avec le chemin, si c'est dans un autre dossier), celui du programme à testé.

Dans le list 2, c'est celui du fichier TRACE_ON ... qu'il faut mettre.

A la ligne 17, j'ai modifié une ligne:
Code:
if v < w then item_add 5, "....."

Pour que la même ligne ne se répète pas si plusieurs instructions sont sur cette ligne.

Faudra que je prenne le temps de voir et tester le programme de Silverman (je crois). Il est vrai qu'il est difficile d'avoir une réaction sur ce type de programme, et j'en sais quelque chose.
Revenir en haut Aller en bas
Minibug

avatar

Nombre de messages : 2412
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: plantage au milieu des 3000 lignes...   Mer 17 Fév 2016 - 9:48

Bonjour tous le monde !

J'ai définitivement trouvé mon problème. cheers

En fait il s'agit de la configuration de chaines de caractères dans un GRID ou je dois réécrire des valeurs.
Et ces positions étaient certainement erronés.
Comme je n'avais qu'une colonne de données, j'ai remplacé GRID par DLIST et je m'en suis sorti...

@Cosmos : je vais garder ton programme de coté, car il me semble très utile. Wink
Merci encore a tous pour votre aide. drunken
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Contenu sponsorisé




MessageSujet: Re: plantage au milieu des 3000 lignes...   

Revenir en haut Aller en bas
 
plantage au milieu des 3000 lignes...
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» vous me ferez cent lignes
» Plantage de firefox lors de l'installation de E-anim
» obtenir une valeur au milieu d'un texte
» (Resolu] Plantage PC...E-Anim HS
» problème d'ajout de plusieures lignes dans un ComboBox .

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: