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: Nouvelle fonction SelectWindowsPrinter | |
| | Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 0:16 | |
| Après une longue pause due au crash de mon disque, me voilà de retour avec une nouveauté dans ma dll. J'ai commencé à utiliser la fonction adr(a$) que Jack a fait marcher (Merci Jack !), pour ajouter une routine qui permet de sélectionner l'imprimante par défaut de Windows, et qui retourne son nom sous forme de string ! Mode d'emploi: - Citation :
dim nom_imprimante$, longueur%, retour%
rem --- il faut allouer un buffeur pour le retour du nom de l'imprimante nom_imprimante$ = string$(255," ") rem --- on appelle la routine dans KGF.dll: retour% = DLL_call2("SelectWindowsPrinter",adr(nom_imprimante$),len(nom_imprimante$) rem --- tester si on a fait un choix ou non if retour%>0 begin rem --- ici, on a fait un choix message "le nom de l'imprimante est "+nom_imprimante$ end else begin rem --- ici, on a frappé "Annuler" message "aucune imprimante choisie" end end_if
| |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 1:16 | |
| Je n'ai pas trop approfondi mais quand je lance le petit programme ci-dessus, j'obtiens "expression arithmétique incorrecte ligne 6" ?
Aux lignes 9 et 14, ça correspond à quoi 'begin' ? et la syntaxe est un peu curieuse, avec les end au milieu du if else, pourquoi pas après le end_if ?.
ah oui, je vois que la dll aurait dû être préalablement chargée en mémoire, puis déchargée ensuite... Par contre, si je le rajoute "Dll_On "... KGF.17.dll" il semble qu'on n'en revienne pas, ça boucle quelque part. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 10:33 | |
| Salut, JL35, Voici un programme de démo qui montre comment se servir de la DLL et de la fonction de choix d'imprimante: - Code:
-
rem Demo SelectWindowsPrinter dans KGF.dll rem rem commencer par renommer KGF.17.dll en KGF.dll rem (le .17 est rajouté par mon générateur de site web...
rem Installer KGF.dll dans le répertoire de Panoramic Editor rem Lancer ce programme par l'éditeur rem cliquer sur DLL_on rem cliquer sur "Nombre d'imprimantes" --> on voit le nombre d'imprimantes Windows rem cliquer sur "Imprimante" --> le dialogue de sélection d'imprimantes s'ouvre rem et si l'on valide, le nom de l'imprimante choisie est affiché !
dim ret%, nom$
label click_1, click_2, click_4, err_dll
button 1 top 1,10 left 1,10 caption 1,"DLL_on" on_click 1,click_1
button 2 top 2,40 left 2,10 caption 2,"Imprimante" on_click 2,click_2
edit 3 top 3,40 left 3,120 width 3,200
button 4 top 4,70 left 4,10 width 4,120 caption 4,"Nombre d'imprimantes" on_click 4,click_4
edit 5 top 5,70 left 5,150 width 5,30
end
click_1: on_error_goto err_dll dll_on "KGF.dll" err_dll: return
click_2: nom$ = string$(255," ") ret% = dll_call2("SelectWindowsPrinter",adr(nom$),len(nom$)) text 3,nom$ return
click_4: text 5,dll_call0("GetPrinterCount") return
Suis les commentaires en début du programme: cela devrait marcher avec la version instantanée du 24/4/2010. En effet, cette version est indispensable car elle contient la correction de la fonction adr(a$) ! | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 16:06 | |
| Bonjour Klaus, Je n'avais pas compris que ton petit bout de code là-haut n'était pas à lancer tel quel ... Bon, dans ton bout d'essai je fais tout comme tu dis, la fenêtre s'affiche avec ses boutons, je clique sur DLL_On, il ne se passe rien de visible (normal), mais si je clique ensuite sur un des autres boutons le programme part dans les décors et ne rend pas la main. Seule différence, ta dll n'est pas dans le répertoire éditeur, mais avec mes sources, mais dans dll_on je donne le chemin complet, donc ça devrait marcher. J'ai essayé avec la dll dans l'éditeur, c'est pareil.
En fait, tout se passe comme si on ne revenait pas du DLL_ON... C'est ça, j'ai mis un print juste avant et un autre juste après, le 1er se fait, pas le second. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 16:19 | |
| Es-tu sûr d'avoir la bonne version de l'éditeur, celle du 24 Avril 2010 ? Ca sinon, cela ne PEUT pas marcher !
Chez moi, j'utilise cette DLL dans plusieurs programmes que j'ai faits pour la mettre au point. Le programme de mon post précédent en est un extrait fonctionnel: il marche chez moi sans problème.
Sache qu'à cause du problème avec DLL_off (voir mon post dans les bugs de Panoramic), il faut complètement arrêter l'éditeur et le relancer, puis recharger le programme application, pour chaque test. J'espère que cette restriction sera bientôt levée. Le symptôme de ce bug est justement qu'en apparence, il ne se passe rien, comme si on ne revenait pas de la DLL...
Donc, essaie de faire comme moi: place le fichier KGF.dll dans le répertoire de l'éditeur, puis lance-le, charge le programme fourni dans mon post précédent et exécute-le. D'abord un click sur le bouton DLL_on (rien de visible à l'écran, mais ça marche), puis un click sur le bouton "Imprimante" et tu dois avoir le dialogue de sélection d'une imprimante windows. Les deux boutons autres que DLL_on peuvent être clickés dans n'importe quel ordre, et aussi souvent que l'on veut. Mais dès qu'on arrête le programme (par la croix ou le "stop" de l'éditeur), il faut quitter l'éditeur et le relancer pour recommencer - voir le bug ci-dessus, car même si l'on ajoute un bouton "DLL_off" pour décharger la DLL, cela ne marche pas pour le moment. C'est le bug dont je parle. Donc, pour le moment, j'en ai fait l'économie... | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 16:52 | |
| Désolé, je suis au courant pour le dll_off, mais c'est le dll_on qui ne marche pas chez moi, je clique sur le bouton et je n'ai plus la main. J'ai bien vérifié, version de l'éditeur 0.9.18 du 24/4, KGF.dll dans le répertoire éditeur. J'ai mis ça pour vérifier: - Code:
-
click_1: print: print: print: print: print: print: print print "DLL_ON lancé" on_error_goto err_dll dll_on "KGF.dll" PRINT "DLL chargée": RETURN err_dll: print "erreur DLL_On !" return Le premier print se fait et pas le deuxième. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 17:12 | |
| Et tu as bien mis KGF.dll dans le répertoire de l'éditeur ? ou dans le répertoire du exe si tu as généré un exe à partir de mon source ?
As-tu bien renommé KGF.17.dll en KGF.dll ? | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 18:00 | |
| Oui j'ai fait tout ça: KGF.dll renommé, mis dans le répertoire de l'éditeur, et exécution en interprété dans l'éditeur. De toute façon, si je mets un nom quelconque pour la dll (Toto.dll) il part bien en erreur. Donc il trouve bien KGF.dll, mais ensuite...? Tiens c'est bizarre, dans le doute j'ai rechargé (et renommé) KGF.dll, et maintenant j'ai cette erreur sur le dll_on: . Autant pour moi Klaus, je viens de le recharger une nouvelle fois, et là tout marche bien ! je ne comprends pas ce qui s'est passé", j'avais peut-être l'ancienne version de KGF, je ne sais pas. En tout cas excuse-moi de t'avoir dérangé pour rien, et merci, ça marche bien.J'ajoute que je viens de rajouter pour voir un bouton dll_off qui semble marcher, les deux boutons imprimante deviennent inactifs, et redeviennent actifs si on reclique dll_on. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 18:33 | |
| Heureux que cela marche.
Je vais retester le problème de DLL_off chez moi. Merci pour les indications. | |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Lun 26 Avr 2010 - 21:09 | |
| - Citation :
- Je vais retester le problème de DLL_off
Je ne comprends pas ce problème de DLL_OFF. J'ai fait un source avec plusieurs séquences DLL_ON / utilisation de fonctions / DLL_OFF sans aucun problème. Lorsque j'examine ce que fait DLL_OFF, je ne vois pas d'erreur, toutes les ressources sont libérées... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 10:46 | |
| Voici le texte de mon post de cette nuit dans la rubrique "bugs dans Panoramic ?". Je n'ai pas encore compris comment insérer un lien vers un autre post dans mon texte, donc je le copie en entier: - Citation :
En utilisant les fonctions DLL_xxx pour tester ma DLL, je suis tombé sur un problème qui ressemble fort à un bug. Cela concerne l'instruction DLL_off.
En effet, cette instruction empêche bien tout accès suivant à la DLL, mais apparemment, elle ne décharge pas la DLL de la mémoire, car il est impossible de la recharger avec DLL_on,"KGF.dll": auune erreur, mais tout reste inactif. Cela concerne l'éditeur de Panoramic, et je place la DLL dans le même répertoire que l'éditeur. Il faut en fait quitter l'éditeur et le relancer pour pouvoir à nouveau travailler avec la DLL.
Il serait vraiment utile que DLL_off fasse place nette comme si rien n'avait été chargé, de sorte qu'un DLL_on suivant puisse recharger une DLL et que tout soit actif. Ceci est d'ailleurs la condition sine qua non pour pouvoir travailler avec plusieures DLL...
Un petit détail: tant qu'aucune DLL n'est chargée par DLL_on, on n'a évidemment pas accès aux routines, mais un appel à une telle routine génère une erreur 29 (trappable). Du coup, il faut proteger chaque DLL_call par un on_error_goto, ce qui est très gênant pour la gestion globale des erreurs car on n'a pas de off_error ou on_error_goto 0. Serait-ce beaucoup demander que de souhaiter un on_error_goto 0 pour désactiver le on_error_goto en vigueur ?
*********** EDIT *************
Après des tests supplémentaires, voici un nouvel éclairage sur le problème. DLL_off a l'air de marcher normalement avec la version instantanée du 24/4/2010, tant qu'un RESTE dans le programme application.
On peut en effet faire plusieurs fois DLL_on suivi de DLL_off suivi de DLL_on suivi de DLL_off etc, et cela marche en apparence. Tant que DLL_on est en vigueur, les fonctions de la DLL sont accessibles, après un DLL_off elles sont inactives, et on DLL_on en restaure l'accès.
Le problème se pose dès que l'on sort du programme, que ce soit par l'instruction terminate, le click sur la croix rouge ou la fonction "stop" de l'éditeur. Le programme s'arrête et on retourne dans l'éditeur. Mais si l'on le relance, alors la commande DLL_on est apparemment sans effet, et il n'y a plus aucun accès à la DLL. Seul moyen de retrouver les fonctions: sortir de l'éditeur, relancer l'éditeur, recharger le programme puis relancer le programme. Là, tout remarche normalement.
Ceci me conforte dans mon idée que DLL_off ne purge pas tout; cette instruction a l'air de simplement inhiber l'accès à la DLL. Mais quelque chose doit rester en mémoire tant que l'éditeur est actif et c'est ce qui empêche un nouveau DLL_on de marcher (je répète: après un arrêt du programme interprêté et son redémarrage direct par l'éditeur).
Effectivement, plusieurs séquences DLL_on ... DLL_off siccessives marchent bien; le problème se pose lorqu'on arrête le programme pour modifier le source dans l'éditeur: pas moyen de le relancer car il n'y a plus d'accès à la DLL. Il faut sauvegarder le programme modifié, sortir de l'éditeur, relancer l'éditeur et ainsi de suite, pour chaque essai. C'est bien sûr faisable, et je travaille ainsi depuis le début, mais j'imagine que cela ne doit pas être le fonctionnement normal que tu as prévu, d'où ma supposition que quelque chose reste en mémore dans l'éditeur, malgré le DLL_off. | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 11:40 | |
| - Citation :
- ?". Je n'ai pas encore compris comment insérer un lien vers un autre post dans mon texte,
En partant de l'index (Un bug dans panoramic....) tu positionnes la souris sur le sujet qui t'intéresses, tu fais un clic droit et tu sélectionnes "copier le raccourci" A+ | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 11:59 | |
| Merci pour l'info. Dans ce cas précis, j'aurais pu le faire puisque le sujet ne contient qu'un seul post. Mais comment faire pour établir un lien vers un post au milieu d'une série de posts dans un sujet ? J' n'y arrive pas. | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 12:32 | |
| Là, je suis comme toi, je ne sais pas. Je ne suis pas certain que ce soit possible. A+ | |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 13:32 | |
| - Citation :
- Le problème se pose dès que l'on sort du programme, que ce soit par l'instruction terminate, le click sur la croix rouge ou la fonction "stop" de l'éditeur. Le programme s'arrête et on retourne dans l'éditeur. Mais si l'on le relance, alors la commande DLL_on est apparemment sans effet, et il n'y a plus aucun accès à la DLL.
Je crois avoir compris ce qui se passe. En effet, si après un DLL_ON, le programme est arrêté (pour mise au point) sans que DLL_OFF ne soit exécuté, il peut y avoir des problèmes à la prochaine exécution de DLL_ON. Pour le moment, la seule parade que je vois c'est: - Code:
-
label xxx - - - on_error_goto xxx - - - xxx: dll_off stop | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 21:06 | |
| Je crois que c'est plus grave que ça. Bien sûr, on peut protéger DLL_on par un on_error_goto, mais la DLL n'est tout simplement pas réactivé au deuxième lancement du programme dans la même session de l'éditeur, même si l'on est passé par DLL_off avant de quitter le programme application. A l'intérieur du premier lancement du programme application, on peut enchaîner à volonté les DLL_on suivi de DLL_off et tout marche comme souhaité. Le problème, c'est de quitter le programme, faire une modif dans le source et le relancer - DLL_on ne donne plus la main sur la DLL. Pour s'en convaincre, voici mon programme avec lequel je teste la DLL. Mode opératoire: cliquer sur "Load DLL", puis par exemple sur "Nombre d'imprimantes", et le champ à droite du bouton reçoit le nombre d'imprimantes installées dans Windows. Cliquer maintenant sur "Unload DLL", puis effacer le fameux champ, puis recliquer sur le bouton "Nombre d'imprimantes". Rien n'est affiché dans ce champs. C'est d'ailleurs bizarre car on devrait y trouver "0". C'est comme s'il ne "revenait" jamais de l'appel de la DLL... . En fait, il y a bien une erreur, mais le on_error_goto qui protège DLL_on frappe et dévie le traitement. Rien de plus normal, car il n'y a pas de "on_error_goto 0" ou de off_error. Recliquer sur "Load DLL", puis sur "Nombre d'imprimantes", le bon chiffre réapparaît. Tout semble en ordre. Et maintenant, on va provoquer le problème dont je parle. Cliquer sur le bouton "Unload DLL", puis la croix pour fermer le programme. Le relancer aussitôt dans l'éditeur, cliquer sur "Load DLL", puis sur "Nombre d'imprimantes", et rien apparaît - la DLL n'est plus accessible. Il faut arrêter l'éditeur et le relancer pour y accéder à nouveau. Voici le code: - Code:
-
label err_dll, err_1 label click_4, click_5, click_19, click_23, click_31, click_41, click_44 label click_50, change_51, click_52, click_57, click_58 dim i%, n%,s$ s$ = "Test Send Message" width 0,800 caption 0,"Test_KGF"
rem --------- gestion de la DLL button 4 top 4,10 left 4,10 caption 4,"Load DLL" on_click 4,click_4 button 5 top 5,10 left 5,300 caption 5,"unload DLL" on_click 5,click_5 rem --------- test fonctions binaires alpha 11 top 11,50 left 11,10 caption 11,"Valeur" edit 12 top 12,50 left 12,50 width 12,50 alpha 13 top 13,50 left 13,120 caption 13,"Nombre de bits" edit 14 top 14,50 left 14,200 width 14,30 alpha 15 top 15,50 left 15,250 caption 15,"Fonction" combo 16 top 16,50 left 16,300 item_add 16,"bin_ROL" item_add 16,"bin_ROR" item_add 16,"bin_SHL" item_add 16,"bin_SHR" item_add 16,"bin_WROL" item_add 16,"bin_WROR" item_add 16,"bin_WSHL" item_add 16,"bin_WSHR" item_add 16,"bin_BROL" item_add 16,"bin_BROR" item_add 16,"bin_BSHL" item_add 16,"bin_BSHR" alpha 17 top 17,50 left 17,460 caption 17,"Résultat" edit 18 top 18,50 left 18,510 width 18,50 button 19 top 19,50 left 19,570 width 19,30 caption 19,"Go" on_click 19,click_19 rem ------------ test ClipboardCopy alpha 21 top 21,90 left 21,10 caption 21,"Mémo origine" memo 22 top 22,110 left 22,10 button 23 top 23,130 left 23,210 width 23,30 caption 23,"Go" on_click 23,click_23 alpha 24 top 24,90 left 24,250 caption 24,"Mémo destination" memo 25 top 25,110 left 25,250
rem ------------- test adr() (choic d'une imprimante) button 31 top 31,220 left 31,10 caption 31,"Test ADR" on_click 31,click_31 edit 32 top 32,220 left 32,100 text 32,s$ edit 33 top 33,220 left 33,230 text 33,adr(s$)
rem ------------- selectionner une imprimante windows button 41 top 41,250 left 41,10 width 41,120 caption 41,"Choix d'imprimante" on_click 41,click_41 edit 42 top 42,250 left 42,140 rem -------- test GetPrinterCount edit 43 top 43,250 left 43,450 width 43,30 button 44 top 44,250 left 44,300 width 44,130 caption 44,"Nombre d'imprimantes" on_click 44,click_44
rem ------------- Inter Process Communication edit 51 top 51,-1234 left 51,-1234 width 51,400 on_change 51,change_51 alpha 55 top 55,280 left 55,10 caption 55,"Destinataire" edit 56 top 56,280 left 56,80 text 56,caption$(0) button 52 top 52,280 left 52,210 width 52,100 caption 52,"Get IPC Handle" on_click 52,click_52 edit 53 top 53,280 left 53,320 edit 54 top 54,280 left 54,450 text 54,handle(51) edit 59 top 59,310 left 59,10 width 59,200 button 50 top 50,310 left 50,230 caption 50,"Envoyer" on_click 50,click_50 button 57 top 57,340 left 57,10 width 57,130 caption 57,"Montrer message reçu" on_click 57,click_57 button 58 top 58,340 left 58,160 width 58,130 caption 58,"Cacher message reçu" on_click 58,click_58
end click_4: on_error_goto err_dll dll_on "KGF.dll" err_dll: return click_5: dll_off return
click_19: i% = val(text$(12)) n% = val(text$(14)) text 18,dll_call2(item_index$(16),i%,n%) return click_23: i% = dll_call1("ClipboardCopy",handle(22)) return
click_31: s$ = string$(255," ") i% = dll_call2("testADR",adr(s$),len(s$)) text 32,s$ text 33,i% return click_41: s$ = string$(255," ") i% = dll_call2("SelectWindowsPrinter",adr(s$),len(s$)) text 42,s$ return
click_44: text 43,dll_call0("GetPrinterCount") return click_50: s$ = text$(59) i% = val(text$(53)) i% = dll_call3("IPCSendMessage",adr(s$),len(s$),i%) return change_51: message "Message reçu: " + text$(51) return
click_52: s$ = text$(56) on_error_goto err_1 i% = -1234 i% = dll_call3("IPCGetHandle",adr(s$),len(s$),i%) text 53,str$(i%) return err_1: message "Erreur ligne "+str$(error_line)+" numéro "+str$(error_number)+" type "+error_type$ return
click_57: top 51,340 left 51,320 return
click_58: top 51,-1234 left 51,-1234 return
| |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 21:54 | |
| Voici une nouvelle version qui devrait résoudre ton problème. http://dl.free.fr/cQHWx2ZR8/PANORAMIC_EDITOR.zipCette version contient en outre 4 nouvelles commandes en cours de test: OFF_ERROR_GOTO : annule l'effet de ON_ERROR_GOTO OFF_CHANGE N : annule l'effet de ON_CHANGE N OFF_KEY_UP N : annule l'effet de ON_KEY_UP N OFF_KEY_DOWN N : annule l'effet de ON_KEY_DOWN N | |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 22:15 | |
| - Citation :
- Et maintenant, on va provoquer le problème dont je parle. Cliquer sur le bouton "Unload DLL", puis la croix pour fermer le programme. Le relancer aussitôt dans l'éditeur, cliquer sur "Load DLL", puis sur "Nombre d'imprimantes", et rien apparaît - la DLL n'est plus accessible. Il faut arrêter l'éditeur et le relancer pour y accéder à nouveau.
J'ai suivi ton mode opératoire - avec la version V 0.9.19i2 du 24/04/2010 - avec la nouvelle version V 0.9.19i3 du 27/04/2010 (qui est censée résoudre ce problème). Dans les 2 cas, le problème que tu décris n'apparait pas. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mar 27 Avr 2010 - 23:02 | |
| J'ai réessayé, en faisant vraiment attention.
1. lancer l'éditeur Panoramic Releases 9.19i, April 24, 2010 2. ouvrir test_KGF_dll.bas 3. cliquer surn"Run (F9)" --> la form0 s'affiche 4. cliquer sur "Load DLL" 5. cliquer sur "Nombre d'imprimantes" --> le nombre apparaît dans le champ 6. cliquer sur "Unload DLL" 7. cliquer sur la croix rouge --> on revient dans l'éditeur 8. cliquer sur "Run (F9)" --> la form0 s'affiche 9. cliquer sur "Load DLL" 10. cliquer sur "Nombre d'imprimantes" --> rien ne se passe
Alors, je sors en cliquant sur la croix rouge, et je me trouve dans l'éditeur. Je mets un "rem" devant la ligne 188 rem on_error_goto err_dll, et je relance en cliquant sur "Run (F9)". Un click sur "Load DLL" produit alors l'erreur suivante: "(136) Impossible to load DLL. Line: 189". On arrête l'éditeur et un relance, et tout rentre dans l'ordre.
Je n'ai pas vu où trouver la version V 0.9.19i3 du 27/04/2010: je n'ai que celle indiquée ci-dessus. | |
| | | Invité Invité
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mer 28 Avr 2010 - 8:22 | |
| Salut Klaus. Le nouvelle éditeur se trouve à la réponse de Jack plus haut. Je viens de la télécharger, et les nouvelles fonctions sont intéressantes.
Merci Jack |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter Mer 28 Avr 2010 - 10:26 | |
| OK, j'ai trouvé, et je vais tester. Merci ! | |
| | | Contenu sponsorisé
| Sujet: Re: KGF.dll: Nouvelle fonction SelectWindowsPrinter | |
| |
| | | | KGF.dll: Nouvelle fonction SelectWindowsPrinter | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |