Novembre 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 | | Calendrier |
|
|
| KGF.dll - intégration des DLLs individuelles | |
|
+4Yannick Severin Jicehel Klaus 8 participants | |
Auteur | Message |
---|
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| | | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 12:49 | |
| Alors là, tu m'en bouches un coin ! Pourquoi Panoramic ne reconnait-il pas la séquénce [, 1,] alors que [,1,] marche ? C'est à ne rien y comprendre au niveau de la syntaxe de Panoramic. Sous XP, aucun problème avec ça !
Jack, ce ne serait pas une question pour toi ?
EDIT
J'ai enlevé l'espace qui gêne W7 dans les deux sources ! C'est tout de même extraordinaire ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 12:59 | |
| Il y a des circonstance où Bill m' a appris une chose... ...ne plus chercher à comprendre et surtout quand il s'agit des versions de Windows. Il y a quelques années, j'ai commencé a essayé de programmer avec python et j'avais des problèmes de compatibilité entre 98SE et XP . Comme quoi çà ne date pas d'aujourd'hui. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 13:05 | |
| Oui. D'accord. Sauf que dans ce cas, l'éditeur de Panoramic est identique ! C'est le même fichier EXE sous W7 et XP ! Pourquoi le résultat est différent ? C'est à ne rien y comprendre !
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 13:18 | |
| Tiens, pour voir ce qui se passe: - télécharge test.dll du répertoire DLLs - exécute ce programme: - Code:
-
dim i% dll_on "test.dll" i% = dll_call4("testparam",1,2 , 3, 4 ) end Il devrait afficher ceci: Cette dll ne contient que la fonction testparam qui a 4 paramètres, et elle affiche la valeur des paramètres entre crochets. Et voici le source de cette DLL: - Code:
-
library test;
uses SysUtils, Dialogs, Classes;
function testparam(p1,p2,p3,p4:integer):integer; stdcall; export; begin showmessage('P1=['+inttostr(p1)+'] p2=['+inttostr(p2)+'] p3=['+inttostr(p3)+'] p4=['+inttostr(p4)+']'); end;
exports testparam;
begin end. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 13:20 | |
| Moi, j’ai testé : no problem Tout marche comme sur des roulettes. J’ai même ajouté plusieurs espaces avant et après les paramètres d’appel. Ça n’a aucune influence.
| |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 13:21 | |
| Il y a autre chose de bizarre que j'ai pu constater. Quand on lance un code par "executer" dans l'éditeur et que, malheureusement, çà plante. Il arrive que le processus "panoramic.exe" reste vivant mais que l'on puisse quand même relancer par "executer". Ce qui donne deux processus "panoramic.exe" et à ce moment là, même si l'erreur est corrigé, çà plante toujours. On est resté sur l'ancien code. j'espère que je suis assez clair... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 13:29 | |
| J'ai fait le dernier "test.dll" tout va bien et là çà me conforte dans mon idée qu'il y a une c..dans le pâté... je pense qu'il s'est produit ce que j'ai décrit dans mon post précédent. Entre temps j'avais fermer l'éditeur donc, là, tout les processus inactifs ont été flingués | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 13:34 | |
| Flingueur! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 14:25 | |
| Oui, c'est certainement ce qui c'est produit, Ygeronimi. Chez moi, sous XP, il m'arrive d'avoir des problèmes similaires, comme par exemple un programme sous l'éditeur qui se plante, que je suis obligé de tuer par le gestionnaire de programmes, mais l'éditeur ne reconnait pas qu'il est arrêté et refuse de le relancer. Punition; arrêter puis relancer l'éditeur. Ou encore, au lancement d'un programme par l'éditeur, le message "Panoramic.exe non trouvé" et le programme se lance pourtant bien.
Bon, tout ça, ce sont des désagréments mineurs pour moi. Je les connais et sais m'en sortir. Tu viens de rajouter un autre comportement bizarre à la liste, et c'est bien de le savoir. En tout cas, je suis content que tout marche bien, et que tu vas pouvoir de faire "aider" maintenant ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 18:21 | |
| Ce qui est le plus gênant ce ne sont pas les fenêtres intempestives avec l'éditeur mais celles qui sont provoqués par les programmes alors que le fonctionnement est normal derrière. Une chose qui pourrait être utile pour la programmation mais là c'est plutôt à Jack de répondre et d' y réfléchir, c'est la possibilité d' ouvrir les aides sur les dll des panoramiciens depuis Panoramic_Editor. Sachant que ces dlls sont là dans le seul but de palier à un manque et qu'elles sont destinées à servir avec panoramic en quasi exclusivité. Une petite réponse Jack ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 18:54 | |
| Je ne suis pas Jack, mais j'ose une réponse quand-même.
Ce ne sera pas évident. Le système d'aide de Panoramic est bâti différemment, Et il n'y a pas de possibilité de déclarer des outils externes.
Mais pourquoi ne pas double-cliquer sur KGF.hlp et garder cela ouvert, en même temps que l'éditeur de Panoramic ? Ainsi, on peut même copier/coller des exemples de l'aide vers l'éditeur ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 19:16 | |
| Tant que seul KGF dispose d'un fichier d'aide, oui. Mais imagine que, je dis bien imagine, Nardo26 créée une aide pour ses dll aussi... puis un autre comme Jean Debord ... combien de fenêtre faudra t il ouvrir pour être opérationnel ... D'autant que maintenant je garde aussi le gestionnaire de tâches ouvert au cas où j'aurai plusieurs processus... Un lien ne mange pas de pain, on place le fichier *.hlp dans le dossier source de panoramic et hop voilà un lien de plus dans l'éditeur... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Lun 13 Aoû 2012 - 23:43 | |
| J'ai ajouté une page à KGF.hlp, permettant de lancer l'aide de jusqu'à 20 autres DLL's. En fait, ce peut être n'importe quel fichier d'aide.
Cette page est accessible sur la page du sommaire, tout en bas: autres DLLs. Une page s'ouvre avec 20 liens préconfigurés. Il suffit de recopier le ou les fichiers d'aide dans le même répertoire, et de les renommer selon le format indiqué sur la page, et le tour est joué. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 23:53 | |
| Bravo Klaus, c'est une bonne idée !
Je vais télécharger çà tout de suite. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 0:17 | |
| Et au fur et à mesure que tu connais les DLLs à utiliser, je peux adapter les libellés en conséquence ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 14 Aoû 2012 - 1:02 | |
| Je pensais aux dll pour les formats et pour les couleurs de Nardo26.
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 8:04 | |
| Alors, donne-moi le nom de la DLL et un libellé significatif, et je l'installe en première ligne dans cette page. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 9:34 | |
| J'ai modifié la façon d'accéder aux fichiers d'aide annexes.
Dans la page des fichiers d'aide annexes, il n'y a plus qu'un sel lien. Ce lien lance le fichier DLL_Autre.bat (oui, oui, DOS n'est pas mort !) qui affiche un menu des fichiers d'aide annexes, et on peut choisir à ce niveau. Or, ce fichier DLL_Autre.bat est modifiable et contient des commentaires qui expliquent comment chacun peut installer ses propres fichiers d'aide, avec leurs libellés, leurs noms et les chemins qui y mènent. Ainsi, chacun est autonome et peut configurer son propre système d'aide intégré.
Donc, à télécharger: KGF.HLP KGF.GID KGF.CNT DLL_Autre.bat et placer le tout dans un même répertoire. | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 9:42 | |
| Excellent ça. Je me demande si pour gagner du temps, Jack ne devrait pas faire un fichier d'aide à Panoramic qui soit externe et personnalisable également par l'utilisateur. En fait, en imaginant ce que donnera Panoramic sous forme de DLL, je vois bien 3 fichiers un éditeur en .exe, un fichier d'aide et la DLL Panoramic. Mais là, je dérive encore | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 11:04 | |
| J'ai fait encore mieux ! J'ai ajouté une ligne en bas du sommaire de l'aide: Menu d'aide. Un clic sur cette ligne appelle un programme Menu_Aide.exe qui est un programme Panoramic affichant une sélection paramétrable de fichiers d'aide ! Il faut générer l'exécutable à partir du source suivant et le placer dans le même répertoire, sous le nom de Menu_Aide.exe: - Code:
-
' Menu_Aide.bas
label labels : gosub labels gosub constantes gosub variables gosub donnees gosub form0 gosub menu gosub GUI gosub initialisations end
labels: label constantes, variables, donnees, form0, menu, GUI, initialisations label choix, fermer, sel, taille_debut, taille_choix return
constantes: dim dll$ : dll$ = "KGF.dll" dim icone$ : icone$ = "Menu_Aide.jpg" return variables: dim no%, i%, n_help%, no_fichiers%, no_libelles%, s$, file$, n%, no_icone% dim version$, w7% return
donnees: data "KGF.hlp","KGF.dll de Klaus" ' ajouter ici les autres dlls: data fichier HLP,libellé data "*eof*" : ' fin de la liste return
form0: border_small no% gosub taille_debut on_close 0,fermer return
menu: return
GUI: no% = no% + 1 : dlist no% : no_fichiers% = no% no% = no% + 1 : combo no% : no_libelles% = no% : hide no% : width no%,200 on_click no%,choix no% = no% + 1 : picture no% : no_icone% = no% : width no%,32 : height no%,32 file_load no%,icone$ : on_click no%,sel return
initialisations: dll_on dll$ version$ = string$(255," ") i% = dll_call1("GetWindowsVersion",adr(version$)) w7% = instr(version$,"Windows 7") read s$ while s$<>"*eof*" n_help% = n_help% + 1 item_add no_fichiers%,s$ read s$ item_add no_libelles%,s$ read s$ end_while return choix: n% = item_index(no_libelles%) file$ = item_read$(no_fichiers%,n%) i% = dll_call2("Help",1,adr(file$)) i% = dll_call2("Help",2,0) hide no_libelles% gosub taille_debut show no_icone% return sel: hide no_icone% gosub taille_choix show no_libelles% return fermer: i% = dll_call2("Help",0,0) dll_off return
taille_debut: if w7%>0 width 0,70 : height 0,70 else width 0,42 : height 0,60 end_if return taille_choix: width 0,210 : height 0,50 return
Il faut aussi télécharger le fichier Menu_Aide.jpg etle placer dans le même répertoire. Le programme affiche d'abord cette icône. Un clic dessus affiche la combo de sélection. Lorsque la sélection est effectuée, l'affichage revient à l'icône initiale.
Dernière édition par Klaus le Mar 14 Aoû 2012 - 17:04, édité 2 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 13:45 | |
| GRRRRRR..... je vais craquer... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 14 Aoû 2012 - 13:57 | |
| Pour les dll de nardo26, il n' y a pas de fichier d'aide. Donc, il faudra attendre le retour de l'auteur... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Mar 14 Aoû 2012 - 14:49 | |
| Tu peux copier n'importe quel fichier HLP dans le répertoire et l'inclure dans le paramétrage. Pour ma part, j'ai testé avec ResHacker.HLP. Voici une autre version, plus "fun" de menu_Aide.bas (je l'en enregistré en Menu_Choc.bas pour garder les deux versions): - Code:
-
' Menu_Choc.bas
label labels : gosub labels gosub constantes gosub variables gosub donnees gosub form0 gosub menu gosub GUI gosub initialisations end
labels: label constantes, variables, donnees, form0, menu, GUI, initialisations label choix, fermer, sel, taille_debut, taille_choix, placer, tick, deplacer return
constantes: dim dll$ : dll$ = "KGF.dll" dim icone$ : icone$ = "Menu_Aide.jpg" return variables: dim no%, i%, n_help%, no_fichiers%, no_libelles%, s$, file$, n%, no_icone% dim no_cont%, no_timer%, x%, y%, delta%(50,2), version$, w7% return
donnees: data "KGF.hlp","KGF.dll de Klaus" data "Nardo.hlp","DLL de Nardo26" ' ajouter ici les autres dlls: data fichier HLP,libellé data "*eof*" : ' fin de la liste return
form0: border_small no% gosub taille_debut on_close 0,fermer caption 0,"Cliquez sur un lien ou tapez ESC" return
menu: return
GUI: no% = no% + 1 : timer no% : no_timer% = no% : timer_off no% timer_interval no%,100 : on_timer no%,tick no% = no% + 1 : dlist no% : no_fichiers% = no% no% = no% + 1 : dlist no% : no_libelles% = no% no% = no% + 1 : picture no% : no_icone% = no% : width no%,32 : height no%,32 file_load no%,icone$ : on_click no%,sel no% = no% + 1 : container no% : no_cont% = no% : hide no% : width no%,590 : height no%,370 return
initialisations: dll_on dll$ version$ = string$(255," ") i% = dll_call1("GetWindowsVersion",adr(version$)) w7% = instr(version$,"Windows 7") read s$ while s$<>"*eof*" n_help% = n_help% + 1 item_add no_fichiers%,s$ read s$ item_add no_libelles%,s$ no% = no% + 1 : alpha no% : parent no%,no_cont% : caption no%,s$ n% = no% : gosub placer : on_click no%,choix font_color no%,int(rnd(255)),int(rnd(255)),int(rnd(255)) read s$ end_while return sel: hide no_icone% gosub taille_choix show no_cont% timer_on no_timer% return
choix: timer_off no_timer% n% = number_click - no_cont% file$ = item_read$(no_fichiers%,n%) i% = dll_call2("Help",1,adr(file$)) i% = dll_call2("Help",2,0) hide no_cont% gosub taille_debut show no_icone% return
fermer: i% = dll_call2("Help",0,0) dll_off return
taille_debut: if w7%>0 width 0,70 : height 0,70 else width 0,42 : height 0,60 end_if return
taille_choix: width 0,600 : height 0,400 return placer: left n%,rnd(width(no_cont%)) top n%,rnd(height(no_cont%)) x% = 1-int((rnd(1)+0.5))*2 y% = 1-int((rnd(1)+0.5))*2 delta%(no%,1) = x%*5 delta%(no%,2) = y%*5 return deplacer: timer_off no_timer% if scancode=27 hide no_cont% gosub taille_debut show no_icone% return end_if ' s$ = str$(no%)+": "+str$(left(no%))+","+str$(top(n%)) ' s$ = s$ + " "+str$(delta%(no%,1))+","+str$(delta%(no%,2)) ' caption 0,s$ ' message "Suite..." x% = left(n%)+delta%(n%,1) y% = top(n%)+delta%(n%,2) if x%<0 delta%(n%,1) = 0 - delta%(n%,1) x% = 0 end_if if y%<0 delta%(n%,2) = 0 - delta%(n%,2) y% = 0 end_if if x%>(width(no_cont%)-1) delta%(n%,1) = 0 - delta%(n%,1) x% = width(no_cont%) - 1 end_if if y%>(height(no_cont%)-1) delta%(n%,2) = 0 - delta%(n%,2) y% = height(no_cont%) - 1 end_if left n%,x% top n%,y% font_color n%,int(rnd(255)),int(rnd(255)),int(rnd(255)) timer_on no_timer% return tick: for n%=no_cont%+1 to no% gosub deplacer next n% return
EDIT Pour ton message d'erreur, est-ce KGF.hlp que tu essaies d'ouvrir ?
Dernière édition par Klaus le Mar 14 Aoû 2012 - 17:04, édité 2 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 14 Aoû 2012 - 14:57 | |
| c'est KGF.hlp qui est introuvable.... pourtant il est bien dans le dossier... la deuxième version aussi provoque ce message... ...enfin, quand je réussis à attraper le lien... | |
| | | Contenu sponsorisé
| Sujet: Re: KGF.dll - intégration des DLLs individuelles | |
| |
| | | | KGF.dll - intégration des DLLs individuelles | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |