Mai 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | Calendrier |
|
| | Version instantanée V 0.9.28i10 du 24/06/2017 | |
| | Auteur | Message |
---|
Jack Admin
Nombre de messages : 2386 Date d'inscription : 28/05/2007
| Sujet: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 11:49 | |
| Cette version instantanée V 0.9.28i10 corrige les bugs constatés sur les commandes EXECUTE et EXECUTE_WAIT - des espaces dans le nom absolu de l'exécutable, - des mauvais passages de paramètres. La syntaxe pour EXECUTE et EXECUTE_WAIT est la même : EXECUTE "fichier.exe" ou "fichier.exe|parametre" EXECUTE_WAIT "fichier.exe" ou "fichier.exe|parametre" Les paramètres sont séparés par le caractère pipe (|) et s'il y a plusieurs paramètres, ils sont séparés par des blancs. La documentation sera modifiée. Exemple avec EXECUTE, et avec un mon absolu contenant un espace : 1 - s'il n'y a aucun paramètre - Code:
-
execute "C:\mon dossier\recepteur.exe" ou, bien sur - Code:
-
v$="C:\mon dossier\recepteur.exe" execute v$ 2 - s'il y a par exemple 3 paramètres - Code:
-
execute "C:\mon dossier\recepteur.exe|12 34 56" Avec recepteur.exe qui correspond par exemple au source : - Code:
-
message Param_value$(1)+chr$(13)+Param_value$(2)+chr$(13)+Param_value$(3) J'en profite pour rappeler que le premier paramètre est récupéré par Param_value$( 1) et non Param_value$(0) _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 24 Juin 2017 - 11:57 | |
| Super, merci Jack ! Voilà qui va solutionner pas mal de choses. Tu vas pouvoir rayé une ligne de la todo_list | |
| | | Minibug
Nombre de messages : 4566 Age : 57 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 12:17 | |
| Merci Jack ! Je vois que des modifications ont été apportés a l’éditeur. Son aspect est quelque peu modifié. Sûrement la nouvelle version de Delphi... J'ai l'impression que les bugs au démarrage ont disparus du moins pour le moment et le tout semble plus rapide à l’exécution du code ! Avez vous la même impression ? | |
| | | silverman
Nombre de messages : 968 Age : 51 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 13:07 | |
| Le pb des espaces est réglé, mais ceci ne fonctionne pas correctement: - Code:
-
execute "C:\mon dossier\recepteur.exe|abcd.bas" "abcd.bas" n'est pas reconnu comme un paramètre, mais est lancé comme un fichier à éxécuter, donc message d'erreur "erreur externe, fichier introuvable". Puis après acquittement de l'erreur, "recepteur.exe" est éxécuté et retrouve bien "abcd.bas" en paramètre. Cependant, si le nom de fichier est un ".bas" valide, il est éxécuté alors que c'est un ".bas" et "recepteur.exe" est ignoré. Par contre: - Code:
-
execute "C:\mon dossier\recepteur.exe|abcd.bas 12" ou execute "C:\mon dossier\recepteur.exe|12 abcd.bas" La, pas de pb, "12" et "abcd.bas" sont tous les 2 reconnus comme paramètres. Les fichiers utilisés pour tester: dans l'éditeur - Code:
-
execute_wait "C:\Program Files\Panoramic Editor V 0.9.25\param_value.exe|test.bas 12" message "fini!" "param_value.bas" compilé en "param_value.exe" - Code:
-
dim i for i=0 to param_number print "paramètre n°";i;" = ";param_value$(i) next i "test.bas" - Code:
-
message "coucou" terminate | |
| | | Jean Claude
Nombre de messages : 5948 Age : 69 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 13:22 | |
| Super, merci Jack. De mon coté, j'ai fait une constation: j'avais un problème de collage avec l'objet SYNEDIT par Ctrl+V (voir ici). Ce problème a disparu, sans que je touche à mon code.
J'en conclus (peut-être hâtivement) que cette nouvelle version va plus loin que la simple correction des bugs sur EXECUTE.
Fausse joie, j'avais mis des barrages dans mon programme qui m'ont dérouté du chemin. Tout ce que je viens d'écrire ne tient pas. (Dommage). Pour répondre à Laurent, je n'ai rien remarqué concernant l'aspect de l'éditeur, mais c'est peut-être une question d'OS. On avance, on avance ... A+ | |
| | | Jack Admin
Nombre de messages : 2386 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 14:15 | |
| @silverman: - silverman a écrit:
- "param_value.bas" compilé en "param_value.exe"
Code: dim i for i=0 to param_number print "paramètre n°";i;" = ";param_value$(i) next i Tu n'as donc pas lu la dernière ligne de mon post: J'en profite pour rappeler que le premier paramètre est récupéré par Param_value$(1) et non Param_value$(0)
Je retire momentanément cette version, j'y ajoute un déclenchement d'erreur lorsqu'on utilise PARAM_VALUE$(0). Ainsi, ce sera réglé ... _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 24 Juin 2017 - 14:25 | |
| Non ! Jack, KGF.dll se sert de Param_value$(0) il me semble pour une de ses fonctions.C' est à nous d' écrire correctement la récupération des paramètres.Cette mesure risque de brider KGF.dll et ce n' est vraiment pas une bonne idée. | |
| | | Jack Admin
Nombre de messages : 2386 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 14:32 | |
| @yannick: - yannick a écrit:
- C' est à nous d' écrire correctement la récupération des paramètres.
Param_value$(0) n'est pas un paramètre, c'est le nom de l'application elle-même. Tous les forums recommandent de ne pas utiliser Param_value$(0) comme nom d'application car ce n'est pas fiable. J'ai connu des déboires avec ce paramètre dans l'éditeur Panoramic de MACOS ... Par exemple dans la documentation de FreePascal (et ils sont des dizaines dans ce cas): https://www.freepascal.org/docs-html/rtl/system/paramstr.htmltu peux y lire: "Therefore, ParamStr(0) should be used with care. " Interdire (par un déclenchement d'erreur) l'utilisation de Param_value$(0) va dans le sens de la fiabilité, mais va aussi m'éviter d'intervenir dans ce forum pour expliquer que le premier paramètre a l'indice 1 et non 0 à tous ceux qui vont crier "au bug !" en pensant que le premier paramètre a l'indice 0. _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 24 Juin 2017 - 15:22 | |
| Bon, ok. Maintenant, je t' invite à mettre les deux source suivant en executable avec la version 28i10 dans un dossier sur le bureau. - Lances Test_Outils.exe - Dans le combo tu ne dois avoir que PanoColor.exe que tu sélectionnes - Clique sur le bouton "Lancer" ( tu dois avoir un message d' erreur chiant mais pas bloquant, cliques sur ok )- PanoColor.exe est lancé- Cliques sur le bouton "Renvoi"- PanoColor se ferme(si tout ce passe comme chez moi, tu dois avoir 0 sur les deux lignes de Retour de Test_Outils) - Re-cliques sur le bouton "Lancer" (si tout ce passe comme chez moi, tu dois avoir 1 et 500 sur les deux lignes de Retour de Test_Outils qui sont les valeurs normalement passées par la procédure SendMessage)Le message est de tropLe premier clic sur Renvoi devrait me renvoyer 1 et 500Test_Outils.bas - Code:
-
hide 0 Variables() Constantes() Labels() Init() Gui() RempListOutils() show 0 end
sub Variables() dim no% dim HndF% dim Prg$ end_sub
sub Constantes() dim_local i% ' NOM DE L APPLICATION dim Titre$ : Titre$ = "Test Outils" Application_title Titre$ ' DOSSIERS dim Path$ : Path$ = dir_current$ if right$(Path$,1)="" : Path$ = left$(Path$,len(path$)-1) : end_if Path$ = Path$+"" ' FICHIER EN LECTURE\ECRITURE dim F_Or% : no%=no%+1 : F_Or%=no% dim F_Ow% : no%=no%+1 : F_Ow%=no% ' OBJETS dim Alph%(6) : for i%=1 to 6 : no%=no%+1 : Alph%(i%)=no% : next i% dim ListOutils% : no%=no%+1 : ListOutils%=no% dim BtnGo% : no%=no%+1 : BtnGo%=no% end_sub
sub Labels() label Clic label TraiteEvent end_sub
sub Init() end_sub
sub Gui()
height 0,250 width 0,500 top 0,50 left 0,50 font_name 0,"" font_size 0,8 font_bold 0 Caption 0,Titre$ on_user_event TraiteEvent alpha Alph%(1) top Alph%(1),10 left Alph%(1),10 caption Alph%(1),"Outils" combo ListOutils% width ListOutils%,200 top ListOutils%,top(Alph%(1))+height(Alph%(1))+5 left ListOutils%,10 button BtnGo% height BtnGo%,height(ListOutils%) width BtnGo%,50 top BtnGo%,top(ListOutils%) left BtnGo%,left(ListOutils%)+width(ListOutils%)+5 caption BtnGo%,"Lancer" cursor_point BtnGo% on_click BtnGo%,Clic alpha Alph%(2) top Alph%(2),top(ListOutils%)+height(ListOutils%)+10 left Alph%(2),10 caption Alph%(2),"Envoi :" alpha Alph%(3) top Alph%(3),top(ListOutils%)+height(ListOutils%)+40 left Alph%(3),10 font_color Alph%(3),0,0,200 caption Alph%(3),"-" alpha Alph%(4) top Alph%(4),top(ListOutils%)+height(ListOutils%)+70 left Alph%(4),10 caption Alph%(4),"Retours :" alpha Alph%(5) top Alph%(5),top(ListOutils%)+height(ListOutils%)+100 left Alph%(5),10 font_color Alph%(5),0,0,200 caption Alph%(5),"-"
alpha Alph%(6) top Alph%(6),top(ListOutils%)+height(ListOutils%)+130 left Alph%(6),10 font_color Alph%(6),0,0,200 caption Alph%(6),"-" end_sub
' ! MENU CLIC Clic: HndF% = handle_form(caption$(0)) Prg$ = item_index$(ListOutils%)+"|"+str$(HndF%) caption Alph%(3),Prg$ Execute Prg$ return ' -
' ! TRAITEMENT DES EVENENEMTS TraiteEvent: off_user_event caption Alph%(5),str$(USER_EVENT_LPARAM) caption Alph%(6),str$(USER_EVENT_WPARAM) on_user_event TraiteEvent return ' -
sub RempListOutils() dim_local a$ dir_change Path$ a$ = file_find_first$ if file_extract_extension$(a$) = ".exe" and file_extract_name$(a$)<>"Test_Outils.exe" : item_add ListOutils%,a$ : end_if a$ = file_find_next$ while a$ <> "_" if file_extract_extension$(a$) = ".exe" and file_extract_name$(a$)<>"Test_Outils.exe" : item_add ListOutils%,a$ : end_if a$ = file_find_next$ end_while file_find_close end_sub
PanoColor.bas - Code:
-
' DECLARATION ET INITIALISATION DES VARIABLES dim ReceiveHnd% : ReceiveHnd% = Param_value$(1) dim event_index% : event_index%= 4024 dim user32% : user32%=2
' DECLARATION DES LABELS label clic
' DECLARATION DES LIBRARY LIBRARY user32%,"user32.dll"
' DECLARATION DES COMMAND command "call_user_event","SendMessageA",user32%,"IIII","stdcall"
' INTERFACE border_small 0 height 0,320 width 0,450 top 0,(screen_y-height(0))/2 left 0,(screen_x-width(0))/2 caption 0,"PanoColor" font_name 0,"Arial" font_size 0,8 font_color 0,85,85,127
alpha 1 top 1,20 left 1,20 caption 1,"Paramètre reçu : "+str$(ReceiveHnd%)
button 2 top 2,60 left 2,20 caption 2,"Renvoi" cursor_point 2 on_click 2,Clic
end
Clic: Send_Color() return
sub Send_Color() dim_local typ%,value% if ReceiveHnd%=0 : exit_sub : end_if typ%=1 value% = 500 call_user_event ReceiveHnd%,event_index%,typ%,value% terminate end_sub
| |
| | | silverman
Nombre de messages : 968 Age : 51 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 15:32 | |
| @Jack Si, j'ai bien lu ton dernier post, et je l'ai parfaitement compris, mais le code que j'ai posté n'est qu'un exemple. Evidemment que je récupère bien les paramètres avec param_value$(1), mais j'utilise param_value$(0) pour récupérer le chemin de l'application. J'ai des pb avec dir_current$. Panoramic editor memorise le dernier répertoire ouvert et ce répertoire est affiché par dir_current$. Si je charge plusieurs sources, dir_current$ change, à moins de fixer le nom du répertoire en debut du source. Mais si je fait cela et que compile en '.exe', l'exécutable ne marchera pas sur un pc autre que le mien. param_value$(0) est pour moi un moyen fiable d'obtenir le chemin de l'application. Alors je suis daccord avec yannick, vu que j'utilise param_value$(0), ça ne m'arrange pas que ce paramètre devienne inaccessible. EDIT: voila comment je procède en début de source: - Code:
-
dim dir_application$ dir_application$=file_extract_path$(param_value$(0)) print dir_application$ | |
| | | Jack Admin
Nombre de messages : 2386 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 16:03 | |
| @silverman: Je reproduit effectivement le problème lorsqu'un nom de fichier est passé en premier paramètre. Peut-être qu'en le décomposant en 2 parties le nom et l'extension et en reconstituant le nom complet dans le récepteur (nom$=fichier$+"."+extension$) on doit pouvoir contourner le problème ...
@yannick : idem, je reproduit l'erreur externe au passage du paramètre. Je vais chercher à comprendre ce qui se passe.
Je vais remettre la dernière version au téléchargement, sans déclenchement d'erreur sur param_value$(0)
J'ai regardé ton code; quelque chose ne va pas, dans Test_Outils.bas, tu utilises USER_EVENT_LPARAM et USER_EVENT_WPARAM juste après OFF_USER_EVENT. Le OFF_USER_EVENT fait que les paramètres USER_EVENT_LPARAM et USER_EVENT_WPARAM ne sont plus traités car il n'y a plus de traitement de l'événement utilisateur. Quand tu les utilises la première fois, ils valent donc 0 comme toute variable Panoramic non initialisée (puisque tu viens par OFF_USER_EVENT de commander l'arrêt du traitement de l'événement utilisateur). Ensuite, au tour suivant, tu lis les valeurs précédentes et non pas les valeurs actuelles, car tu viens encore de commander la fin du traitement... etc ... Cela explique pourquoi tu as 0 comme première valeur, puis toujours "un coup" en retard...
Pour me faire comprendre, pour la première fois, c'est un peu comme si tu mettais des items dans un LIST, et qu'avant de les lire, tu fait brutalement un CLEAR...
C'est sans doute mal expliqué dans la documentation (je vais la développer) mais tu vois bien dans l'exemple que les variables USER_EVENT_LPARAM et USER_EVENT_WPARAM sont exploitées avant le OFF_USER_EVENT. _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | Jack Admin
Nombre de messages : 2386 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 16:36 | |
| J'ai remis la version 0.9.28i10 au téléchargement. J'ai ajouté un déclenchement d'erreur quand on tente de lire une variable USER_EVENT_LPARAM ou USER_EVENT_WPARAM alors que le traitement des événements utilisateur n'est pas actif. _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | silverman
Nombre de messages : 968 Age : 51 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 16:38 | |
| - Citation :
- Peut-être qu'en le décomposant en 2 parties le nom et l'extension et en reconstituant le nom complet dans le récepteur (nom$=fichier$+"."+extension$) on doit pouvoir contourner le problème ...
En effet, ça marche parfaitement. J'avais imaginé ajouter un _ après la liste des paramètres: - Code:
-
execute_wait "C:\Program Files\Panoramic Editor V 0.9.25\param_value.exe|test.bas"+" _" et en déduisant 1 à 'param_number' dans ma boucle de lecture. - Citation :
- Je vais remettre la dernière version au téléchargement, sans déclenchement d'erreur sur param_value$(0)
Ouf, merci! | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 24 Juin 2017 - 18:13 | |
| @ Jack, Merci de tes réponses. J' ai compris tes explications. Je dois récupérer les valeurs avant le "off_user_event". c' est mon utilisation de ce dernier qui bouchait le tuyau. | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 24 Juin 2017 - 18:33 | |
| Là je bug . J' ai supprimé le "off_user_event' et le "on_user_event TraiteEvent" de "Clic:" et c' est pareil. Il me faut faire deux appels à "PanoColor.exe" pour avoir les bons retours. Le premier retour est toujours deux 0 au lieu de 1 et 500. | |
| | | Jean Claude
Nombre de messages : 5948 Age : 69 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 19:08 | |
| J' ai une piste qui marche, mais j'ai un message d'erreur qui me dit que le fichier n'a pas été trouvé mais en réalité si car ça fonctionne.J'ai déplacé off_user_event et on_user_event et j'ai utilisé EXECUTE_WAIT à la place de EXECUTE. Test_Outils.bas - Code:
-
hide 0 Variables() Constantes() Labels() Init() Gui() RempListOutils() show 0 end
sub Variables() dim no% dim HndF% dim Prg$ end_sub
sub Constantes() dim_local i% ' NOM DE L APPLICATION dim Titre$ : Titre$ = "Test Outils" Application_title Titre$ ' DOSSIERS dim Path$ : Path$ = dir_current$ if right$(Path$,1)="" : Path$ = left$(Path$,len(path$)-1) : end_if Path$ = Path$+"" ' FICHIER EN LECTURE\ECRITURE dim F_Or% : no%=no%+1 : F_Or%=no% dim F_Ow% : no%=no%+1 : F_Ow%=no% ' OBJETS dim Alph%(6) : for i%=1 to 6 : no%=no%+1 : Alph%(i%)=no% : next i% dim ListOutils% : no%=no%+1 : ListOutils%=no% dim BtnGo% : no%=no%+1 : BtnGo%=no% end_sub
sub Labels() label Clic label TraiteEvent end_sub
sub Init() end_sub
sub Gui()
height 0,250 width 0,500 top 0,50 left 0,50 font_name 0,"" font_size 0,8 font_bold 0 Caption 0,Titre$ on_user_event TraiteEvent alpha Alph%(1) top Alph%(1),10 left Alph%(1),10 caption Alph%(1),"Outils" combo ListOutils% width ListOutils%,200 top ListOutils%,top(Alph%(1))+height(Alph%(1))+5 left ListOutils%,10 button BtnGo% height BtnGo%,height(ListOutils%) width BtnGo%,50 top BtnGo%,top(ListOutils%) left BtnGo%,left(ListOutils%)+width(ListOutils%)+5 caption BtnGo%,"Lancer" cursor_point BtnGo% on_click BtnGo%,Clic alpha Alph%(2) top Alph%(2),top(ListOutils%)+height(ListOutils%)+10 left Alph%(2),10 caption Alph%(2),"Envoi :" alpha Alph%(3) top Alph%(3),top(ListOutils%)+height(ListOutils%)+40 left Alph%(3),10 font_color Alph%(3),0,0,200 caption Alph%(3),"-" alpha Alph%(4) top Alph%(4),top(ListOutils%)+height(ListOutils%)+70 left Alph%(4),10 caption Alph%(4),"Retours :" alpha Alph%(5) top Alph%(5),top(ListOutils%)+height(ListOutils%)+100 left Alph%(5),10 font_color Alph%(5),0,0,200 caption Alph%(5),"-"
alpha Alph%(6) top Alph%(6),top(ListOutils%)+height(ListOutils%)+130 left Alph%(6),10 font_color Alph%(6),0,0,200 caption Alph%(6),"-" end_sub
' ! MENU CLIC Clic: HndF% = handle_form(caption$(0)) Prg$ = item_index$(ListOutils%)+"|"+str$(HndF%) caption Alph%(3),Prg$ on_user_event TraiteEvent Execute_wait Prg$ return ' -
' ! TRAITEMENT DES EVENENEMTS TraiteEvent: caption Alph%(5),str$(USER_EVENT_LPARAM) caption Alph%(6),str$(USER_EVENT_WPARAM) off_user_event return ' -
sub RempListOutils() dim_local a$ dir_change Path$ a$ = file_find_first$ if file_extract_extension$(a$) = ".exe" and file_extract_name$(a$)<>"Test_Outils.exe" : item_add ListOutils%,a$ : end_if a$ = file_find_next$ while a$ <> "_" if file_extract_extension$(a$) = ".exe" and file_extract_name$(a$)<>"Test_Outils.exe" : item_add ListOutils%,a$ : end_if a$ = file_find_next$ end_while file_find_close end_sub
A+ | |
| | | silverman
Nombre de messages : 968 Age : 51 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 19:15 | |
| @yannick Tu n'a pas de chance, tu es tombé sur un bug que klaus a remarqué aussi il y a qq temps, mais tu as réussi à le faire en 100% panoramic, chapeau bas! Je vais poster dans le sujet "Synedit Parameters", qui sera plus adapté. Sinon bonne nouvelle, tout fonctionne, cad plus de "message d' erreur chiant mais pas bloquant", et transmission correct des parametres(une bidouille qui semble fonctionner). | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 24 Juin 2017 - 19:41 | |
| @ Jean Claude,Effectivement avec "Execute_wait" on obtient le résultat du premier coup. Mais ton déplacement fait doublon avec celui dans la sub "Gui()" En tout cas, je prends en attendant mieux. Mais cela veut dire aussi qu' il faut que le programme appelé soit fermé pour que l' appelant reçoive des infos. On ne peut pas ouvrir un programme multifonctions et renvoyer plusieurs infos à l' appelant au fur et mesure du travail effectué avec l' appelé. @ Silverman,Je sens une pointe d' ironie... En tout cas, je me passerai de ce genre de découverte. | |
| | | Jean Claude
Nombre de messages : 5948 Age : 69 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Sam 24 Juin 2017 - 20:58 | |
| @Yannick, - Citation :
- Mais ton déplacement fait doublon avec celui dans la sub "Gui()"
Oui, je n'ai pas été plus loin que d’ajouter "_WAIT" à EXECUTE et de déplacer les commandes EVENT. J'ai tenu compte de ce qu'a dit Jack et je me suis dit que le deuxième programme ne peut transmettre les infos qu'à la condition que le premier attende le résultat pour continuer. - Citation :
- Mais cela veut dire aussi qu' il faut que le programme appelé soit fermé pour
que l' appelant reçoive des infos. IDEM: l'appelant attend des infos de l'appelé, il faut bien que l'appelant attende que l'appelé redonne la main à l'appelant Si utilisateur ferme par la croix rouge sans répondre le retour est 0,0 , à toi de traiter ce cas dans ton code. J'ai fait un essai en évitant le bouton retour du second programme, en plaçant Send_Color() avant END, ça marche très bien. Mais le retour par le bouton marche aussi. Je n'ai pas tester la fermeture de l'outil par la croix rouge de la fenêtre, mais je suis certain que ça doit marcher. A+ | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| | | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 25 Juin 2017 - 16:53 | |
| Si Execute et Execute_Wait ne sont plus sensible au espaces dans le nom du fichier à lancer, je maintient tout de même ma demande de SHORT_NAME$(F) pour les paramètres. Car, si l' on passe en paramètre un chemin complet de fichier et que celui ci contient un espace, le paramètre en devient deux du fait de cet espace. Je maintient aussi SEND_MESSAGE L,W car si procédure par user32.dll fonctionne pour Windows, il n' en ait peut être pas de même pour MACOS ou ANDROID. | |
| | | Klaus
Nombre de messages : 12276 Age : 74 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 Dim 25 Juin 2017 - 17:05 | |
| - Citation :
- Je maintient aussi SEND_MESSAGE L,W car si procédure par user32.dll fonctionne pour Windows,
il n' en ait peut être pas de même pour MACOS ou ANDROID. C'est tout à fait spécifique à Windows. Le mécanisme des messages avec WPARAM et LPARAM est une spécificité de Windows. | |
| | | Yannick
Nombre de messages : 8610 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 25 Juin 2017 - 17:19 | |
| Je ne sais pas si c' est une spécificité Windows mais User_Event_Lparam et Wparam existent bel et bien et doivent, si j' ai bien compris, fonctionner sur les autres OS. Si je les utilise dans un programme, il faut bien que je puisse initialiser les deux variables depuis un programme serveur et les transmettre au programme client. d' où la demande. | |
| | | Contenu sponsorisé
| Sujet: Re: Version instantanée V 0.9.28i10 du 24/06/2017 | |
| |
| | | | Version instantanée V 0.9.28i10 du 24/06/2017 | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |