| KGF.dll - intégration des DLLs individuelles | |
|
+4Yannick Severin Jicehel Klaus 8 participants |
|
Auteur | Message |
---|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Ven 10 Aoû 2012 - 16:30 | |
| Klaus pour moins galérer pour la MAJ, pourquoi n'utiliserais tu pas le principe du programme d'aide de JL35 pour l'aide Panoramic de manière à avoir un programme et une BDD avec les fonctions, explications, ... Tu mettrais à jour la BDD avec les nouvelles fonctions, un clic sur générer doc et ça te ferait la doc à jour, triée et tout. Et pour nous autre, pour retrouver une fonction, nous aurions la puissance de l'outil. Voir fussionner l'outil de JL35 avec ta doc pour rechercher dans l'aide de Panoramic et dans celle de ta DLL car à mon avis, ça va devenir un complément très utilisé pour certains types de programmes. Enfin c'est juste une idée comme ça, à prendre ou pas. Mais je sais que maintenir des liens, c'est parfois galère (j'en mets souvent dans des documents Word et il sont souvent perdus, cassés, ...) | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 10 Aoû 2012 - 16:54 | |
| Je me suis fait un petit *.chm pour mieux retrouver toutes les fonctions ( çà commence à en faire beaucoup ) Il est dispo sur mon Webdav pour ceux qui voudrait y jeter un oeil, voir s'en servir. http://www.mydrive.ch/ - Login : panoramicien@ygeronimi_panoramic - MdP: panoramic123 Par contre, je ne garantis pas d'être aussi rapide que Klaus pour les mises à jours... Edit : il est créé avec HelpNDoc | |
|
| |
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 Ven 10 Aoû 2012 - 18:32 | |
| J'ai mis une nouvelle version d'aide dans le dossier. J'ai complété la description de toutes les fonctions de la première catégorie: "Fonctions diverses". Pour chaque fonction, il y a une petite explication, la syntaxe, l'explication des paramètres et un exemple qu'on peut prendre par copier/coller. Mon outil est fait avec ShalomHelp, un freeware danois comme son nom ne l'indique pas. Mais il est génial, très intuitif à utiliser, maintient automatiquement tous les liens y compris en insertion ou suppression des pages, peut gérer des liens WEB (j'en ai mis un pour pointer sur le forum), et surtout, grand avantage, on peut y accéder à partir d'un programme Delphi ! Lorsque le fichier sera complet, je regarderai comment on peut faire cela en Panoramic, et on aura alors un système d'aide accessible par un programme Panoramic ! Pour ceux que cela intéresse, voici le lien vers le site du produit. | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 10 Aoû 2012 - 19:04 | |
| C'est téléchargé... | |
|
| |
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 Ven 10 Aoû 2012 - 19:42 | |
| Nouvelle version du fichier d'aide: j'ai documenté la deuxième catégorie - les fonctions binaires.
Je dois dire que faire la doc, de toutes façons, c'est la saisie de textes dont une partie est déjà dans KGF.rtf. Donc, rien de bien difficile. Et la création de la structure - après un quart d'heure de prise en main du logiciel, je constate que c'est d'une facilité déconcertante à créer et à maintenir.
Je vais donc continuer rapidement à compléter la doc de cette manière. | |
|
| |
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 Ven 10 Aoû 2012 - 21:43 | |
| L'aide est complète pour la 3ème catégorie: fonctions de gestion de fichiers
EDIT
Et une 4ème catégorie: fonctions de gestion des fenêtres
| |
|
| |
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 Sam 11 Aoû 2012 - 10:19 | |
| L'aide est complétée pour les catégories supplémentaires: - les objets ValueListEditor - les objets MaskEdit - les fonctions Interception des clics sur un objet - les fonctions de cryptage - les fonctions de gestion d'histogramme - les fonctions de communication entre programmes - les fonctions de gestion de la souris - les fonction de gestion du Windows Media Player - les fonctions de gestion d'impression - les fonctions de gestion d'images - les fonctions de gestion du texte prononcé - les fonctions de gestion de chaînes de caractères - les fonctions de gestion d'un browser basé sur Internet Explorer
| |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Dim 12 Aoû 2012 - 8:45 | |
| Merci Klaus pour la MAJ de la doc et pour les infos sur ce logiciel qui a l'air très intéressant pour faire des chm Je regarde ça à mon retour le 14 au soir ou le 15 probablement | |
|
| |
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 Dim 12 Aoû 2012 - 9:51 | |
| Nouvelle intégration: - les fonction de la gestion dynamique des DLLs
Ca y est - la doc est complète ! Avec exemples pour chaque fonction !
| |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: KGF.dll - intégration des DLLs individuelles Dim 12 Aoû 2012 - 10:17 | |
| Bravo Klaus ! pas le temps aujourd'hui mais je prends tout ça dès que possible, et merci pour le boulot accompli (j'attendais lâchement que tout soit fini). | |
|
| |
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 Dim 12 Aoû 2012 - 12:20 | |
| | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 12 Aoû 2012 - 12:30 | |
| Bravo, et un grand merci pour l'aide que tu nous apportes. | |
|
| |
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 Dim 12 Aoû 2012 - 13:18 | |
| Merciiiiiiiiiiiiiii ! C'est un vrai encouragement !
Et puisque j'y suis: j'ai ajoute une nouvelle fonction Help à KGF.dll ! Elle permet d'avoir accès au système d'aide de Windows avec les fichiers HLP (comme celui que j'ai fait pour ma DLL). Et c'est très simple d'utilisation.
Fonctions gérées:
- ouverture d'un fichier d'aide - fermeture d'un fichier d'aide - affichage de l'indexe du fichier d'aide ouvert - affichage d'une page d'aide du fichier d'aide ouvert par son ID numérique - affichage d'une page ou d'une liste de pages d'aide du fichier d'aide ouvert par une clé partielle
Avec ça, et un utilitaire comme celui que j'utilise, chacun peut se créer son propre système d'aide pour une application donnée, et même faire une aide contextuelle...
Regardez dans KGF.hlp rubrique "fonctions diverses" pour la doc de la nouvelle fonction ! | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 12 Aoû 2012 - 13:46 | |
| Une petite précision pour ceux qui ne le saurai pas, à moins que KGF nous en dispense...
Pour les fichiers *.HLP avec W7, il faut télécharger une mise à jours pour avoir l'application qui les ouvre. Elle n'est pas présente chez Vista et 7 au départ mais elle et dispo chez Bill.
| |
|
| |
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 Dim 12 Aoû 2012 - 17:40 | |
| Pour Vista aussi, il faut WinHlp32.exe, mais c'est le même que celui de XP. Il suffit de le copier. J'ai celui de Seven - si vous avez un problème de téléchargement...
| |
|
| |
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 Dim 12 Aoû 2012 - 18:59 | |
| J'ai déposé une version CHM dans le même répertoire, sous le nom KGF_html.chm. C'est une version convertie d'après KGF.hlp, par l'utilitaire HelpMaker (freeware). C'est outil est beaucoup plus lourd à manipuler que ShalomHelp que j'utilise, mais il sait importer le HLP et le convertir en CHM (avec res ajustements cosmétiques).
La version CHM marche directement sous Vista et Seven, sans installer WinHelp32. Mais seule la version HLP est utilisable pour le moment par KGF.dll en accès par programme Panoramic. Cela changera prochainement - j'ajouterai la possibilité d'accéder aussi les CHM ! | |
|
| |
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 - 0:09 | |
| Voici un petit programme de démo qui déclenche une page d'aide différente par chacun des 3 boutons de la colonne de gauche. Au départ, ces boutons sont inactifs. Un bouton "Ouvrir l'Aide' les active, et un bouton "Fermer l'Aide" désactive cela à nouveau: - Code:
-
' test_Help.bas label hlp1,hlp2,hlp3,hlp13,hlp14,fermer dim i%, key$, file$, flag% file$ = "KGF.hlp" key$ = "Set" dll_on "KGF.dll" on_close 0,fermer
button 1 : top 1,10 : left 1,10 : on_click 1,hlp1 caption 1,"Test 1" button 2 : top 2,40 : left 2,10 : on_click 2,hlp2 caption 2,"Test 2" button 3 : top 3,70 : left 3,10 : on_click 3,hlp3 caption 3,"Test 3"
button 13 : top 13,10 : left 13,110 : on_click 13,hlp13 caption 13,"Ouvrir l'Aide" : width 13,150
button 14 : top 14,40 : left 14,110 : on_click 14,hlp14 caption 14,"Fermer l'Aide" : width 14,150 end
hlp1: if flag%=1 then i% = dll_call2("Help",3,17) return
hlp2: if flag%=1 then i% = dll_call2("Help",4,adr(key$)) return
hlp3: if flag%=1 then i% = dll_call2("Help",2,0) return
hlp13: ' pa passe pas en W7 ! if flag%=0 then i% = dll_call2("Help", 1,adr(file$)) if flag%=0 then i% = dll_call2("Help",1,adr(file$)) flag% = 1 return hlp14: if flag%=1 then i% = dll_call2("Help",0,0) flag% = 0 return
fermer: if flag%=1 then i% = dll_call2("Help",0,0) dll_off return
Et une réalisation d'une aide contextuelle par la touche F1: il y a un MEMO et un EDIT qui affichent une parge quelconque de l'aide KGF.hlp lors de la frappe de F1, juste pour montrer le principe. Dans une application, il conviendrait bien sûr de créer un fichier HLP spécifique pour le programme. Le mémo de droite sert de trace pour la réception des F1: - Code:
-
label key, fermer
dim i%, flag%,file$ file$ = "KGF.hlp"
on_close 0,fermer dll_on "kgf.dll" flag% = 1 ' pa passe pas en W7 ! i% = dll_call2("Help", 1,adr(file$)) i% = dll_call2("Help",1,adr(file$))
memo 1 : top 1,10 : left 1,10: on_key_down 1,key edit 2 : top 2,120 : left 2,20: on_key_down 2,key list 3 : top 3,10 : left 3,300
end
key: if key_down_code=112 item_add 3,"Aide "+str$(number_key_down) select number_key_down case 1: i% = dll_call2("Help",3,17) case 2: i% = dll_call2("Help",3,23) end_select end_if return fermer: if flag%=1 i% = dll_call2("Help",0,0) dll_off end_if return C'est fou ce qu'on peut faire en Panoramic !
Dernière édition par Klaus le Lun 13 Aoû 2012 - 12:52, édité 1 fois | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 3:09 | |
| puis 9 et 29 pour le deuxième Edit : tout les fichiers KGF sont enregistrés dans un même dossier, placé sur le bureau et les *.bas sont enregistrés dans ce même dossier. | |
|
| |
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 - 8:50 | |
| Oups... Recharge KGF.dll et ça devrait marcher. Un problème de version - désolé. EDIT En cas de problème, exécute CE programme et donne-moi le résultat: - Code:
-
' Afficher_version_de_KGF.bas
dim vers_KGF$, vers_Win$, vers%
dll_on "KGF.dll" vers_KGF$ = string$(25," ") vers_Win$ = string$(255," ") vers% = dll_call1("GetWindowsVersion",adr(vers_Win$)) vers% = DLL_call1("KGFdllVersion", adr(vers_KGF$) ) message str$(vers%/100) + " ==> " + vers_KGF$ + " avec " + vers_Win$ end
| |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 10:51 | |
| Voici la réponse à tous essais sur les deux premiers codes :
et la réponse à ton test de version : | |
|
| |
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 - 11:35 | |
| As-tu placé KGF.hlp dans le même répertoire que le programme et la DLL ? Sinon, as-tu essayé de mettre le bon chemin dans la variable file$ du programme de démo ? Ce message signifie que la fonction d'aide est bien appelée, mais qu'il ne trouve pas le fichier HLP. La version de KGF est la bonne. | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 11:39 | |
| Tout est dans le même dossier, placé sur le bureau Dans ton deuxième code, j'ai même précisé , dès fois que... : - Code:
-
file$ = dir_current$+"\KGF.hlp" | |
|
| |
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:06 | |
| Fais un message dir_current$ pour voir ce que la variable contient. Sinon, je suis nul wn W7. Il y a peut-être un problème de droit d'accès ? As-tu installé le programme WinHlp32.exe ? | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 12:24 | |
| Tout est normal, sauf le résultat des deux codes qui me donnent le message que je t'ai posté plus haut. J'ai bien chargé le WinHlp32.exe ( j'aurai eu l'air couillon de le dire aux autres et d'oublier de le faire moi même...non ? ) Cela pourrait bien être un des mystères de notre ami Bill... | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Aoû 2012 - 12:33 | |
| J' AI TROUVE !!!!!! Dans le code que tu donnes , dans les appels de dll, il y a un espace entre une virgule et la variable... hlp13: if flag%=0 then i% = dll_call2("Help" , 1,adr(file$)) flag% = 1 return faut supprimer l'espace avant le 1et dans l'autre : i% = dll_call2("Help" , 1,adr(file$)) faut supprimer l'espace avant le 1 | |
|
| |
Contenu sponsorisé
| Sujet: Re: KGF.dll - intégration des DLLs individuelles | |
| |
|
| |
| KGF.dll - intégration des DLLs individuelles | |
|