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 | 
 

 Violation d'accès.

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : Précédent  1, 2
AuteurMessage
Jack
Admin
avatar

Nombre de messages : 1773
Date d'inscription : 28/05/2007

MessageSujet: Re: Violation d'accès.   Sam 19 Mar 2016 - 23:09

J'ai codé une capture de toutes les exceptions, avec affichage d'un numéro de ligne quand l'exception arrive pendant l'exécution d'un source.

Voici un exemple d'affichage :



Demain je termine cela et je mets une version instantanée à disposition.

_________________
username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://panoramic.free-boards.net
JL35



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

MessageSujet: Re: Violation d'accès.   Sam 19 Mar 2016 - 23:51

Super, merci Jack pour la rapidité.

En attendant je viens d'essayer mon système sur le programme DICO.bas de Mike (voir la rubrique 'Les inutilitaires').
Son programme me fait une erreur 'Indice de liste hors limites (0)', évidemment sans numéro de ligne.
Avec mon petit utilitaire ça me donne arrêt à la ligne 250:
DB_NB_ENREGISTREMENT=VAL(ITEM_READ$(DB_OUTPUT,1))
Il me manque probablement une ressource, je n'ai pas du tout étudié le programme, mais c'est pour dire que j'ai bien récupéré un numéro de ligne, ce qui limite considérablement les recherches. Et d'autant plus si on ne connaît pas le programme.

Et si c'est en natif dans Panoramic, alors là ça fera des arrachages de cheveux en moins !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 0:55

C'est un grand pas en avant, Jack ! Merci pour cet effort !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Minibug

avatar

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

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 1:19

Merci pour ta réactivité Jack !
Ça va nous changer la vie c'est sûr. Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Invité
Invité



MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 2:30

Voila une bonne avancée. Merci Jack

@JL35
Je viens de faire des essais. Je ne pouvais pas avant car je n'avais qu'un Linux.
J'ai des problèmes de chemin, j'ai pas trop envie d'aller chercher du côté des noms courts. Vu que d'autres ont essayé, et que ça marche, alors bravo. J'ai du mal à rentrer dans des codes en ce moment, fatigue oblige.
Revenir en haut Aller en bas
Yannick

avatar

Nombre de messages : 8002
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Dim 20 Mar 2016 - 9:00

Merci Jack,
tu vas sauver quelques uns de mes cheveux... Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5863
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 10:35

C'est clair que se sera vraiment un plus surtout pour le public visé par Panoramic: Les débutants et surtout aussi pour ceux qui ne le sont plus et qui le maltraite ou qui font de gros programmes. Bref en somme pour tout le monde quoi... Very Happy
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 5086
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 12:05

Comme dit Klaus, c'est un grand pas en avant pour Panoramic et ses adeptes.
A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



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

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 15:41

@cosmos:
Une version avec les noms courts générés automatiquement à partir des chemins normaux.
Il y a toujours les 3 variables à mettre à jour: r$ (répertoire des sources), panedi$ (Panoramic_Editor.exe), panexe$ (Panoramic.exe):
Code:
LABEL Chp,Info
DIM r$,fr$,i%,a$,c$,q$,panedi$,panexe$
r$ = "C:\PANORAMIC"+CHR$(92): ' Répertoire des sources Panoramic
  FileShort(r$): r$ = CLIPBOARD_STRING_PASTE$: ' nom court
panedi$ = "C:\Program Files (x86)\Panoramic Editor\PANORAMIC_EDITOR.exe"
  FileShort(panedi$): panedi$ = CLIPBOARD_STRING_PASTE$: ' nom court
panexe$ = "C:\Program Files (x86)\Panoramic Editor\PANORAMIC.exe"
  FileShort(panexe$): panexe$ = CLIPBOARD_STRING_PASTE$: ' nom court
fr$ = r$+"Debug_tmp.bas": ' Fichier source de manoeuvre (créé)
q$ = CHR$(34)
WIDTH 0,230: HEIGHT 0,SCREEN_Y-40
BORDER_SMALL 0: CAPTION 0, "-   DEBUG   -"
ALPHA 8: TOP 8,2: FONT_SIZE 8,10: FONT_BOLD 8: CAPTION 8,"Clic le progr. à debugger "
  COLOR 8,255,255,128
BUTTON 9: WIDTH 9,30: LEFT 9,WIDTH(0)-50: HEIGHT 9,22: CAPTION 9,"?"
  FONT_BOLD 9: FONT_SIZE 9,10: ON_CLICK 9,Info
CONTAINER_OPTION 10: TOP 10,21: WIDTH 10,WIDTH(0)-20: HEIGHT 10,30
  CAPTION 10,"Exécuter dans:": COLOR 10,200,255,255
OPTION 11: PARENT 11,10: TOP 11,13: LEFT 11,3: CAPTION 11,"Panoramic_Editor"
OPTION 12: PARENT 12,10: TOP 12,TOP(11): LEFT 12,115: CAPTION 12,"Panoramic.exe"
  MARK_ON 11
LIST 1: TOP 1,50: WIDTH 1,210: HEIGHT 1,HEIGHT(0)-90: FONT_NAME 1,"Consolas"
  ON_CLICK 1,Chp
MEMO 2: HIDE 2
DLIST 4
DLIST 5
EXECUTE_WAIT "Cmd.exe /c DIR /B "+r$+"*.bas | clip"
CLIPBOARD_PASTE 2
FOR i% = 1 TO COUNT(2): ITEM_ADD 1,ITEM_READ$(2,i%): NEXT i%
END
' ==============================================================================
Chp:
  FILE_LOAD 4,r$+ITEM_INDEX$(1)
  FOR i% = 1 TO COUNT(4)
      ITEM_ADD 5,"  Caption 0,"+q$+"Ligne: "+STR$(i%)+" *** debug ***"+q$
      ITEM_ADD 5,ITEM_READ$(4,i%)
  NEXT i%
  FILE_SAVE 5,fr$
  IF CHECKED(11) = 1
      EXECUTE panedi$+" "+fr$: ' exécution dans Panoramic_Editor
  ELSE
      EXECUTE panexe$+" "+fr$: ' exécution dans Panoramic.exe
  END_IF
TERMINATE
' ==============================================================================
Info:
  c$ = CHR$(10)
  a$="Débogage d'un programme dont l'origine de l'erreur n'est pas localisée."+c$
  a$=a$+"  (méthode cosmos70)"+c$+c$
  a$=a$+"Ce module intercale entre toutes les lignes du programme à tester une ligne"+c$
  a$=a$+q$+"CAPTION 0 "+q$+" + n° de la ligne courante, et crée un nouveau fichier: Debug_tmp.bas"+c$
  a$=a$+"(dont le nombre de lignes est donc le double de celui de l'original)"+c$+c$
  a$=a$+"C'est ce nouveau fichier/programme qui sera exécuté, soit dans Panoramic_Editor,"+c$
  a$=a$+"soit dans Panoramic.exe (choisi préalablement)."+c$+c$
  a$=a$+"Usage:"+c$
  a$=a$+"1) Choisir d'abord le programme d'exécution (Panoramic_Editor ou Panoramic.exe)"+c$
  a$=a$+"2) Cliquer dans la liste des programmes le source (.bas) à tester."+c$+c$
  a$=a$+"Quand le programme part en erreur, le numéro de la ligne où il s'est arrêté est"+c$
  a$=a$+"affiché dans le caption du Form 0."
  MESSAGE a$
RETURN
' ==============================================================================
SUB FileShort(f$)
  ' Chemin court fichier f$ -> clipboard
  EXECUTE_WAIT "cmd /c for %A in ("+CHR$(34)+f$+CHR$(34)+") do @echo %~sA | clip"
  CLIPBOARD_STRING_COPY LEFT$(CLIPBOARD_STRING_PASTE$, LEN(CLIPBOARD_STRING_PASTE$)-3)
END_SUB
' ==============================================================================


Dernière édition par JL35 le Dim 20 Mar 2016 - 18:09, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 18:05

Merci JL35
J'ai compris pourquoi cela ne fonctionnait pas. Dans r$ il faut mettre un anti-slash à la fin, pour remplir le list. Mais peut-être est-il "bouffé" par le forum.

Bien le programme fonctionne. geek
Revenir en haut Aller en bas
JL35



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

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 18:09

Tu as raison ! l'antislash a bien été bouffé par le forum, encore un coup !
Je vais essayer de le remettre... ou alors sous une autre forme...
Un peu agaçant ce forum qui modifie ce qui est entre les balises 'code'
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: Violation d'accès.   Dim 20 Mar 2016 - 18:16

Le forum déteste  ou au contraire, il aime trop l’anti-slash ( \ ) terminal  au point de le bouffer.
Il est prudent de faire :

Code:

r$ = "C:….\PANORAMIC" + chr$(92)
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: Violation d'accès.   Dim 20 Mar 2016 - 18:59

Tiens papydall, c'est justement ce que j'ai fait ! enfin, après coup...

Tout de même, cet antislash est entre des balises code, et en plus entre des guillemets,
alors je me demande bien ce qui fait que ça saute comme ça ! c'est n'importe quoi ! Evil or Very Mad
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jack
Admin
avatar

Nombre de messages : 1773
Date d'inscription : 28/05/2007

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 19:35

La version instantanée V 0.9.27i6 est disponible au téléchargement.

Pour tout arrêt, du à une cause extérieure à Panoramic, une fenêtre s'affiche.
Cette fenêtre indique :
- le numéro de ligne qui était en cours d'exécution lors de cette erreur,
- le libellé de l'erreur.

J'ai sorti rapidement cette version et il n'y a pas encore de lien avec l'editeur qui ne visualise pas la ligne en erreur comme c'est le cas lors d'une erreur détectée par Panoramic.
Je vous demande de tester cette version, et de proposer d'éventuelles améliorations, car je n'ai pas pu tester tous les cas.
Je pense que l'indication du numéro de ligne va faciliter la recherche d'erreur dans de grands programmes.

Accessoirement, cette version possède une nouvelle commande :
SHOW_MODAL N qui permet de visualiser un FORM modal de numéro N. L'exécution d'un programme est suspendue pendant la visualisation d'une fenêtre modale. C'est une vieille demande sur le forum qui se concrétise.

_________________
username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://panoramic.free-boards.net
Minibug

avatar

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

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 19:46

Merci Jack, je teste de suite... cheers
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Yannick

avatar

Nombre de messages : 8002
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Dim 20 Mar 2016 - 19:47

cheers  Merci Jack.

La fenêtre modal en bonus, là, c' est super !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 5086
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Violation d'accès.   Dim 20 Mar 2016 - 19:54

Merci Jack,

Si j'ai bien compris SHOW_MODAL N permet de remplacer Inactive 0 jusqu’à ce que l'utisateur click sur un bouton de sortie ou par la croix rouge. Donc un FORM modal c'est un FORM comme les autres, c'est SHOW_MODAL qui le change. Un peu comme BORDER_SMALL...
Si c'est le cas ça tombe à pic pour mon code Stratégo.

Je télécharge et j'essai.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Violation d'accès.   

Revenir en haut Aller en bas
 
Violation d'accès.
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 2 sur 2Aller à la page : Précédent  1, 2

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: