FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Access violation après EXECUTE Emptypar Pedro Hier à 15:50

» Un autre pense-bête...
Access violation après EXECUTE Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Access violation après EXECUTE Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Access violation après EXECUTE Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Access violation après EXECUTE Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Access violation après EXECUTE Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Access violation après EXECUTE Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Access violation après EXECUTE Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Access violation après EXECUTE Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Access violation après EXECUTE Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Access violation après EXECUTE Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Access violation après EXECUTE Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Access violation après EXECUTE Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Access violation après EXECUTE Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Access violation après EXECUTE Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment :
SSD interne Crucial BX500 2,5″ SATA – 500 ...
Voir le deal
29.99 €

 

 Access violation après EXECUTE

Aller en bas 
4 participants
AuteurMessage
JL35




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

Access violation après EXECUTE Empty
MessageSujet: Access violation après EXECUTE   Access violation après EXECUTE EmptyMar 27 Oct 2009 - 14:52

Si je passe dans le sous-programme suivant: copie d'une valeur string dans le presse-papier de Windows (clip.exe est un petit utilitaire externe qui copie un fichier dans le presse-papier):
Code:
Clipd:
v$ = vd$: Goto Clips
Cliph:
v$ = vh$
Clips:
rem recopie du résultat v$ dans le presse-papier (forme décimale ou hexa)
rem Item_Add 15, v$: Clipboard_Copy 15: Rem ne marche pas
File_open_write 1, "Z:\Clip.txt": File_write 1, v$: File_Close 1
Execute "C:\Util\Clip.exe Z:\Clip.txt"
Return
j'ai systématiquement, au moment du Terminate, l'erreur suivante:
Access violation après EXECUTE Erreur
que je n'ai pas si je ne passe jamais dans le S/P.
Qu'est-ce que je fais de mal ?

(Clipboard_Copy ne fonctionne que pour une valeur sélectionnée par l'opérateur dans le memo).

PS: si j'appelle 4 fois le sous-programme, j'ai 4 fois l'erreur successivement au moment du Terminate. L'erreur est bien liée à la fonction Execute, mais je ne vois pas pourquoi.

PS2: le programme appelé n'est pas en cause, j'ai essayé avec d'autres utilitaires, ou des fonctions MsDos (DIR), le phénomène est le même.
Revenir en haut Aller en bas
Jack
Admin
Jack


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

Access violation après EXECUTE Empty
MessageSujet: Re: Access violation après EXECUTE   Access violation après EXECUTE EmptyMar 27 Oct 2009 - 17:27

Citation :
j'ai systématiquement, au moment du Terminate, l'erreur suivante
Où est ta commande terminate ?

A la lecture de ton post, je crois comprends que tu fais
Code:
gosub clips
terminate
et que cela provoque un plantage parce que clips a la structure suivante:
Code:
clips:
execute "quelconque.exe"
return

Si j'exécute ce code minimal:
Code:
label clips
gosub clips
terminate
end
clips:
execute "notepad.exe"
return
je n'ai pas de plantage.
Ce code plante t'il chez toi?
Revenir en haut Aller en bas
https://panoramic.1fr1.net
JL35




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

Access violation après EXECUTE Empty
MessageSujet: Re: Access violation après EXECUTE   Access violation après EXECUTE EmptyMar 27 Oct 2009 - 17:48

Non, effectivement, ton code ne plante pas non plus chez moi, mais je n'arrive pas à voir la différence de structure avec le mien.
Je ne vais pas au Terminate après le Gosub, je me remets en attente d'événement dans la boucle.
Le S/P est appelé par On_Click, voilà la fin du code adapté d'un exemple de Panoramic: FINAL_COLOR (13 et 14 sont des éléments du menu, ajoutés):
Code:
...
On_Click 13, Clipd
On_Click 14, Cliph

Memo 15: Left 15, 10: Top 15, 0: Width 15, 100: Height 15, 20: Hide 15

main_loop:
red = position(2): d = red: GOSUB ConvHex: hr$ = h$
caption 8, str$(red) + " (h" + hr$ + ")"
green = position(5): d = green: GOSUB ConvHex: hg$ = h$
caption 9, str$(green) + " (h" + hg$ + ")"
blue = position(7): d = blue: GOSUB ConvHex: hb$ = h$
caption 10, str$(blue) + " (h" + hb$ + ")"
if red<>sred or green<>sgreen or blue<>sblue
  color 1, red, green, blue
  sred = red: sgreen = green: sblue = blue
  vd$ = str$(red) + "," + str$(green) + "," + str$(blue)
  vh$ = "&h" + hr$ + hg$ + hb$
end_if
wait 200
if clicked(12) = 1 then goto finished
goto main_loop

finished:
TERMINATE
END

Clipd:
v$ = vd$: GOTO Clips
Cliph:
v$ = vh$
Clips:
rem recopie du résultat v$ dans le presse-papier (forme décimale ou hexa)
rem Item_Add 15, v$: Clipboard_Copy 15: Rem ne marche pas (doit être sélectionné)
FILE_OPEN_WRITE 1, "Z:\Clip.txt": FILE_WRITE 1, v$: FILE_CLOSE 1
EXECUTE "C:\Util\Clip.exe Z:\Clip.txt"
RETURN

ConvHex:
REM conversion décimal/hexa de d, résultat h$ sur 2 caractères
h$=""
REPEAT
  h$ = MID$("0123456789ABCDEF", 1+16*FRAC(d/16), 1) + h$
  d = INT(d/16)
UNTIL d <= 0
IF LEN(h$) < 2 THEN h$ = "0" + h$
RETURN

D'ailleurs si je regarde ton post, je ne vois aucune différence entre ce que tu dis que je fais et ce que tu fais dans ton exemple (qui ne plante pas).
Je précise bien que l'erreur se produit au moment du Terminate, uniquement si on est passé dans le s/p en cours d'exécution, donc l'erreur est différée, comme une ressource non rendue, un truc comme ça.
Revenir en haut Aller en bas
flowerkinzy

flowerkinzy


Nombre de messages : 100
Date d'inscription : 23/09/2009

Access violation après EXECUTE Empty
MessageSujet: Re: Access violation après EXECUTE   Access violation après EXECUTE EmptyMer 28 Oct 2009 - 16:20

j'ai exactement le même problème avec le même type de programme! Surprised
(exemple-type)
Code:

start:
...
if clicked(...)=1 then goto fin
goto start

fin:
terminate
end
Pour ce type de code, ça plante toujours mais pour ce qui suit, ça marche 2 fois sur 3
Code:

start:
...
if clicked(...)=1
  terminate
  end
  end_if
goto start

C'est pas si gênant que ça sauf pour l'utilisateur du programme bien sûr... Laughing
Revenir en haut Aller en bas
JL35




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

Access violation après EXECUTE Empty
MessageSujet: Re: Access violation après EXECUTE   Access violation après EXECUTE EmptyMer 28 Oct 2009 - 17:24

Non, puisque ça ne se produit qu'au moment de quitter le programme, mais ça ne fait pas très propre.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


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

Access violation après EXECUTE Empty
MessageSujet: Re: Access violation après EXECUTE   Access violation après EXECUTE EmptyMer 28 Oct 2009 - 18:00

D'accord avec JL35,
Si on fait des programmes, c'est pour un utilisateur, donc il faut que çà soit Nickel.
A+
Revenir en haut Aller en bas
Contenu sponsorisé





Access violation après EXECUTE Empty
MessageSujet: Re: Access violation après EXECUTE   Access violation après EXECUTE Empty

Revenir en haut Aller en bas
 
Access violation après EXECUTE
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Access Violation: coup de gueule.
» Access violation
» Access Violation
» access violation et grid
» base de donnees access

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: