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
» quel est ce comportement de Panoramic_editor
par Minibug Aujourd'hui à 8:42

» bug BORDER_HIDE : bloque la commande full_space
par silverman Aujourd'hui à 1:19

» Découpe dans une image
par JL35 Hier à 22:00

» FNC IsDateValide(d$) pour vérifier la validité d'une date
par papydall Hier à 18:57

» Pour faire plaisir à jjn4.
par Pedro Alvarez Hier à 8:13

» Pour faire plaisir à Marc37.
par Marc Jeu 22 Fév 2018 - 21:46

» Couleur d'une variable qui n'est pas un mot-clé
par bignono Jeu 22 Fév 2018 - 14:03

» Un catalogue de photos de fleurs, avec KBDD, affichage HTML
par Klaus Mer 21 Fév 2018 - 22:44

» KGF_dll - nouvelles versions
par Klaus Mer 21 Fév 2018 - 22:30

» Mah-Jong anglais
par jjn4 Mer 21 Fév 2018 - 14:22

» Partie fractionnaire d'un flottant
par silverman Mer 21 Fév 2018 - 14:19

» bug CREATE_HIDE : corruption de form
par silverman Mer 21 Fév 2018 - 13:32

» Racine carrée d’un nombre par l’algorithme de Héron
par Ouf_ca_passe Mer 21 Fév 2018 - 9:52

» Méthode manuelle d'extraction de la racine carrée
par pascal10000 Mer 21 Fév 2018 - 7:47

» [annulé]ON_MOVE n,l ne fonctionne que sur le form 0
par silverman Mar 20 Fév 2018 - 16:52

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Février 2018
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
262728    
CalendrierCalendrier

Partagez | 
 

 Au secours : TERMINATE ne m'aime plus!

Aller en bas 
AuteurMessage
papydall

avatar

Nombre de messages : 5746
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/
Yannick

avatar

Nombre de messages : 8015
Age : 46
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 : 8015
Age : 46
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 : 8015
Age : 46
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 : 5746
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/
Yannick

avatar

Nombre de messages : 8015
Age : 46
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 : 10576
Age : 68
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 : 5746
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/
Klaus

avatar

Nombre de messages : 10576
Age : 68
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 : 5746
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/
Klaus

avatar

Nombre de messages : 10576
Age : 68
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 : 5746
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/
Klaus

avatar

Nombre de messages : 10576
Age : 68
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 : 5746
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/
Klaus

avatar

Nombre de messages : 10576
Age : 68
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 : 5746
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/
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 :)
» ceux qui n'aime pas les bOunty ne sont pas mes amis... = D
» Sashimi n'aime pas les sushis
» On aime me fréquenter. Je suis passionante et passionné.
» Emy* || J'aime pas les épinards ! Vive les frites.

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: