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
» Dessin 2D: largeur de trait
par JL35 Aujourd'hui à 17:48

» Projet de planétarium virtuel.
par Pedro Alvarez Aujourd'hui à 16:28

» PanExpress : l'éditeur Panoramic avec création d'objet
par Jean Claude Hier à 20:32

» Animation: Feux de signalisation
par Minibug Hier à 20:28

» Quantité de mémoire utilisée par un exe
par Jack Mar 19 Juin 2018 - 16:39

» Problème avec 'file_load'.
par Pedro Alvarez Lun 18 Juin 2018 - 8:12

» Version instantanée V 0.9.28i20 du 13/06/2018
par jjn4 Sam 16 Juin 2018 - 14:25

» string$(0,chr$(32)) sans erreur
par silverman Ven 15 Juin 2018 - 19:56

» Version instantanée V 0.9.28i19 du 13/06/2018
par Minibug Ven 15 Juin 2018 - 19:14

» Mes souhaits d'amélioration de Panoramic.
par Pedro Alvarez Jeu 14 Juin 2018 - 20:17

» [RÉSOLU] Message d'erreur impossible à indentifier
par Minibug Mer 13 Juin 2018 - 20:52

» Cadre pour image
par Jean Claude Mar 12 Juin 2018 - 16:31

» Créateur d'objets Panoramic
par Minibug Mar 12 Juin 2018 - 14:02

» Planétarium gratuit.
par Jean Claude Sam 9 Juin 2018 - 18:50

» Comment afficher une image sans fond.
par JL35 Sam 9 Juin 2018 - 14:16

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2018
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier

Partagez | 
 

 Au secours : TERMINATE ne m'aime plus!

Aller en bas 
AuteurMessage
papydall

avatar

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

MessageSujet: Au secours : TERMINATE ne m'aime plus!   Mer 3 Déc 2014 - 16:23

Salut tout le monde.

J’utilise la fonction WB_Create de la KGF.dll dernière version : KGF.dll V3.94 du 01/12/2014
J’ai un soucis avec la commande Panoramic TERMINATE
Citation :
Cette commande TERMINATE arrête définitivement l'exécution du programme et libère la mémoire. Tous les objets sont détruits. Le programme n'existe plus en mémoire.

Ça , c’est la théorie, mais la pratique , c’est autre chose : PANORAMIC.exe a cessé de fonctionner … et je dois tuer ce processus qui ne répond plus (pourtant je suis un homme paisible, pas un tueur !!!)

Voici un code exemple :  de-REMer la ligne 20 ( j’invente des nouveaux verbes !) pour voir.
Cliquez sur le bouton Quitter : ça ne TERMINATE pas le programme.

Code:
rem ============================================================================
label quitter
dim res%, WB1%, WB2%, url$

dll_on "C:\Users\acer\Desktop/KGF.dll"
button 1 : top 1,30 : left 1,250 : caption 1,"Quitter" : on_click 1,Quitter
CreerWB()
end
rem ============================================================================
SUB creerWB()
  WB1% = dll_call1("WB_Create",handle(0))
  res% = dll_call5("WB_Locate",WB1%,100,100,400,300)
  url$ = "http://panoramic.free-boards.net/"
  res% = dll_call2("WB_Url",WB1%,adr(url$))
END_SUB
rem ============================================================================

Quitter:
  res% = dll_call1("WB_Delete",WB1%)
'  terminate
return
rem ============================================================================


Je pense que TERMINATE n'apprécie pas trop les DLLs
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Yannick

avatar

Nombre de messages : 8077
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 3 Déc 2014 - 16:44

Et si tu mets un petit délai entre la suppression et le terminate ?...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 8077
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 3 Déc 2014 - 16:51

Le code telque tu nous l' a posté me renvoie ceci lors du clic sur le bouton "Quitter" :


il y a déjà un problème.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 8077
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 3 Déc 2014 - 17:10

Je viens de prendre la dernière version de KGF et pfff... plus de problème... geek
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Mer 3 Déc 2014 - 18:22

ygeronimi a écrit:
Je viens de prendre la dernière version de KGF et pfff... plus de problème... geek

Moi aussi, j'utilise la dernière version de KCF et pfff... il y a un problème...  PANORAMIC.exe a cessé de fonctionner … Crying or Very sad
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Yannick

avatar

Nombre de messages : 8077
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 3 Déc 2014 - 18:29

Papydall a écrit:
Moi aussi, j'utilise la dernière version de KCF
Si tu utilise KCF, il est normal que tu es un problème...


ceci dit, et plaisanterie mise à part, essaies de redémarrer l' éditeur avec toutes les vérifs de "processus" habituelles.
puis remplace le / par un \ dans l' adresse de KGF.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Mer 3 Déc 2014 - 18:53

Je viens d'essayer ton code, Papydall. J'y ai fait une seule modif: j'ai adapté le chemin vers KGF.dll à ma configuration. Et ça marche sans aucun problème. Ma version de KGF.dll est:
KGF.dll V3.84 du 01/12/2014
Avec ça, tu ne devrais avoir aucun problème. Je l'utilise quotidiennement.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
papydall

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 0:23

J’ai bien écrit que  TERMINATE  utilisée avec KGF.dll ne m’aime plus !
Ce simple
Code:
dll_on "C:\Users\acer\Desktop\KGF.dll"
message "ok"
terminate

Provoque le plantage !
J’ai testé avec d’autres DLL  et le programme se termine parfaitement.
Suis-je la seule et unique victime de ce phénomène ? Sad Sad
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Klaus

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 0:41

Regarde cette version, légèrement "complétée" de ton code:
Code:
dim version$, res%
version$ = string$(25," ")
dll_on "KGF.dll"
res% = dll_call1("KGFdllVersion",adr(version$))
hide 0
message "ok "+str$(res%)+" = " + version$
show 0
terminate
Voici ce que ça donne:
[img][/img]
Et la validation du message arrête le programme proprement, sans plantage...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
papydall

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 1:00

Ich bin betrübt, das geht nicht!
Chez moi, le TERMINATE  c'est le  plantage !
Je vais oublier un moment ce TERMINATE
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Klaus

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 1:07

Alors, fais comme moi dans Synedit_Editor:
Code:
res% = dll_call1("KillProcessByHandle",handle(0))
à la place de TERMINATE...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
papydall

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 1:21


Pour ce KillProcessByHandle : ça marche et plus de plantage.

Grande question  pour moi (un super novice) qui demande une petite réponse du super Klaus :
Après avoir créer un browser par WB_Create et le localiser par WB_Locate est-il possible de définir sur cet emplacement un BUTTON cliquable  par exemple pour gérer un événement quelconque?

Code:
dim res%,WB%
dll_on "C:\Users\acer\Desktop/KGF.dll"
WB% = dll_call1("WB_Create",handle(0))
res% = dll_call5("WB_Locate",WB%,50,50,400,300)
' Ici je veux définir un BUTTON
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Klaus

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 1:49

Qu'est-ce que tu veux faire exactement ?

Avec un évènement ON_CLICK du bouton, provoquer des réactions du WB ? Pas de problème: utilise PrinterManager et PrinterFunction pour cela.

Tu veux être averti sur des évènements qui se produisent à l'intérieur du WB ? Alors il faut faire autrement. Regarde les derniers rajouts concernant les nouvelles fonctions WB_xxx. Elles permettent de faire cela.

Sinon, décris plus précisément ce qu'il te faut...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
papydall

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 2:14

Je dispose de plusieurs fichiers Flash (extension SWF).
Ce sont des animations très intéressantes  (Math, Physique, Electronique, etc.).
Je désire en faire une application en Panoramic (avec KGF.dll, …)
L’exemple suivant va te montrer la chose.
Même si tu ne disposes pas du fichier à la ligne 14, le programme doit se dérouler en affichant simplement un petit carreau sur la page.
J’ai défini le bouton QUITTER  sur FORM 0.
Mon souhait est le définir sur la page de l’animation.

Code:

rem ============================================================================
rem       Intégrer un objet Flash dans un objet HTML
rem ============================================================================

label fin
dim Id_Form,jeu$ ,WB% , termine%
full_space 0
Id_Form = 10 : form Id_Form
 width Id_Form,width(0)-100 : height Id_Form,height(0)-120 : top Id_Form, 100 : left Id_Form,50
 button 20 : left 20,width(0)/2-200 : top 20,20 : width 20, 200 : caption 20,"Q U I T T E R"
 font_bold 20: font_size 20,14 : on_click 20,fin

dll_on "C:\Users\acer\Desktop/kgf.dll" : ' Adapter le chemin
jeu$ = "C:\Users\acer\Desktop\SWF\Math/Aire4_Triangle1.swf" : ' Fichier Flash

caption Id_Form,jeu$
Jeu_Flash(Id_Form,jeu$,width(10),height(10))
end
rem ============================================================================
' Id_Form : identificateur du Form
' Jeu$ est le nom du fichier Flash d'extension SWF
' Largeur et Hauteur sont les dimensions de la fenêtre de vision
SUB Jeu_Flash(Id_Form,jeu$,largeur,hauteur)
    dim_local  hnd%, res%, url$,q$
    q$ = chr$(34)
    file_open_write 9999,"flash.html"
' L'animation flash ci-dessous se résume en un petit code, c'est la simplcité même de l'html5.
    file_writeln 9999,"<embed src='"+jeu$+"'"+q$+" width="+q$+str$(largeur)+q$+" height="+q$+str$(hauteur)+q$+">"
    file_close 9999

    hnd%=handle(Id_Form)
    url$="file://"+dir_current$+"/flash.html"
    WB%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",0,0,largeur,hauteur)
    res%=dll_call1("WBUrl",adr(url$))
    file_delete "flash.html"
END_SUB
rem ============================================================================
fin:
  termine% = dll_call1("KillProcessByHandle",handle(0))
return
rem ============================================================================



REMARQUE :
Le bouton n'est pas nécessairement pour terminer le programme.
Il pourrait être pour charger une autre animation etc...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Klaus

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 2:47

Tu ne peux pas injecter un bouton dans l'animation flash ni dans le WB. Mais tu peux le placer simplement à-côté du premier bouton (solution 1) ou décaler un peu le WB vers le bas et coller le bouton dans la fenêtre 10 tout en haut (solution 2).

Voici ton code aménagé ainsi, avec les deux solutions identifiées par des commentaires (actuellement, la solution 2 est active):
Code:

rem ============================================================================
rem      Intégrer un objet Flash dans un objet HTML
rem ============================================================================

label fin, autre
dim Id_Form,jeu$ ,WB% , termine%
full_space 0
Id_Form = 10 : form Id_Form
 width Id_Form,width(0)-100 : height Id_Form,height(0)-120 : top Id_Form, 100 : left Id_Form,50
 button 20 : left 20,width(0)/2-200 : top 20,20 : width 20, 200 : caption 20,"Q U I T T E R"
 font_bold 20: font_size 20,14 : on_click 20,fin
' ======== Klaus: solution 1: (2 lignes)
' button 30 : left 30,width(0)/2 : top 30,20 : width 30, 200 : caption 30,"A U T R E"
' font_bold 30: font_size 30,14 : on_click 30,autre

dll_on "kgf.dll" : ' Adapter le chemin
jeu$ = "Aire4_Triangle1.swf" : ' Fichier Flash

caption Id_Form,jeu$
Jeu_Flash(Id_Form,jeu$,width(10),height(10))
end
rem ============================================================================
' Id_Form : identificateur du Form
' Jeu$ est le nom du fichier Flash d'extension SWF
' Largeur et Hauteur sont les dimensions de la fenêtre de vision
SUB Jeu_Flash(Id_Form,jeu$,largeur,hauteur)
    dim_local  hnd%, res%, url$,q$
' ======== Klaus: solution 2: (2 lignes)
 button 30 : left 30,width(0)/2 : top 30,0 : width 30, 200 : caption 30,"A U T R E"
 font_bold 30: font_size 30,14 : on_click 30,autre : parent 30,10
    q$ = chr$(34)
    file_open_write 9999,"flash.html"
' L'animation flash ci-dessous se résume en un petit code, c'est la simplcité même de l'html5.
    file_writeln 9999,"<embed src='"+jeu$+"'"+q$+" width="+q$+str$(largeur)+q$+" height="+q$+str$(hauteur)+q$+">"
    file_close 9999

    hnd%=handle(Id_Form)
    url$="file://"+dir_current$+"/flash.html"
    WB%=dll_call1("WBCreate",hnd%)
' ======== Klaus: solution 1: (1 ligne)
'    res%=dll_call4("WBLocate",0,0,largeur,hauteur-30)
' ======== Klaus: solution 3: (1 ligne)
    res%=dll_call4("WBLocate",0,30,largeur,hauteur-30)
    res%=dll_call1("WBUrl",adr(url$))
    file_delete "flash.html"
END_SUB
rem ============================================================================
fin:
  termine% = dll_call1("KillProcessByHandle",handle(0))
return
rem ============================================================================
autre:
  message "charger ici une autre animation flash..."
  to_foreground 10
return
rem ============================================================================


Note: j'ai changé les deux chemins d'accès...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
papydall

avatar

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

MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   Jeu 4 Déc 2014 - 3:11

Merci maître Klaus.
J'adopte la solution 2.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/ En ligne
Contenu sponsorisé




MessageSujet: Re: Au secours : TERMINATE ne m'aime plus!   

Revenir en haut Aller en bas
 
Au secours : TERMINATE ne m'aime plus!
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Bonne fin de semaine de Pâques à vous tous que j'aime et que j'apprécie :)
» La bière est la preuve que Dieu nous aime et veut que nous soyons heureux. { Casus Belli
» service FTP bbox "au secours bouygues"
» Johnny Hallyday - (avec Florent Pagny et Nawfel) - Toute La Musique Que J' Aime
» En fait je t'aime en secret. [CADEAUX]

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: