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 - nouvelles versions | |
|
+13The Gamer Nardo26 silverman Minibug Pedro mindstorm pascal10000 Jicehel papydall Jean Claude JL35 Yannick Klaus 17 participants | |
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Jeu 12 Fév 2015 - 19:34 | |
| Oups... erreur dans la doc ! Il faut bien sûr lire adr(fichier$) et non len(fichier$)... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 12 Fév 2015 - 21:52 | |
| Je me disais aussi... Je testerai un peu plus tard, j' ai un gamer de 15 ans qui me tanne pour avoir l' ordi depuis 4 jours... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 13 Fév 2015 - 3:39 | |
| | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 13 Fév 2015 - 9:44 | |
| Pas chez moi. Le fichier se trouve dans la corbeille. J'ai juste remplacé Yannick par klausgunther et adapté le chemin vers KGF.dll. Es-tu certain d'avoir la bonne version de la DLL ? | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 13 Fév 2015 - 11:19 | |
| | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 13 Fév 2015 - 12:54 | |
| J'ai fait une version différente qui marche également chez moi. Prends KGF.dll du WebDav et réessaie. La version de KGF.dll n'a pas changé. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 13 Fév 2015 - 13:28 | |
| Cela fonctionne avec cette nouvelle version. Je vais voir si cela fonctionne pour un dossier complet... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 13 Fév 2015 - 13:34 | |
| Rapport : J' ai créé un dossier avec deux fichiers *.txt à l' intérieur J' ai passé l' adresse du dossier à la fonction et... ...hop, disparu! Bravo klaus, cela va être un gain de temps pour la suppression et, surtout, donner une seconde chance aux nettoyeurs compulsifs. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 13 Fév 2015 - 13:39 | |
| Ok. Super.
Je vais voir si je peux généraliser ce principe et proposer un jeu de fonctions pour la manipulation de fichiers et arborescences de dossiers...
EDIT
Info préliminaire, au sujet de la fonction DeleteFileToRecycleBin: tu peux passer; - un nom complet d'un fichier - un nom complet d'un dossier - un nom complet de fichier ou dossier comprenant des jokers (* et ?)
| |
| | | 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 - nouvelles versions Ven 13 Fév 2015 - 17:26 | |
| - Ygeronimi a écrit:
- Bravo klaus, cela va être un gain de temps pour la suppression
et, surtout, donner une seconde chance aux nettoyeurs compulsifs. Tu parles à propos de la fonction DeleteFileToRecycleBin (merci Klaus, en passant) Tu veux « donner une seconde chance aux nettoyeurs compulsifs » et tu ne donnes pas un moyen simple pour le faire en Panoramic. Voici ma solution - Code:
-
execute_wait "cmd.exe /c start ::{645FF040-5081-101B-9F08-00AA002F954E}" Cette commande va ouvrir la corbeille et on peut alors exécuter les opérations de la dite corbeille : restaurer un ou plusieurs éléments, vider la corbeille, etc… J’ai posté cette astuce ici mais elle n’a intéressé personne ! Alors si elle t’intéresse … @Klaus Pardon pour la pollution de ton post. | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: KGF_dll - nouvelles versions Ven 13 Fév 2015 - 17:33 | |
| Heu là, c'est directement en lien avec le sujet, il ne s'agit donc pas d'une pollution selon moi... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Ven 13 Fév 2015 - 17:36 | |
| Pas de problème, Papydall - l'astuce est bien noté, dans les archives ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 13 Fév 2015 - 18:01 | |
| @ Papydall, A la différence de ton astuce, la fonction déplace un fichier ou dossier dans la corbeille sans ouvrir la fenêtre de cette corbeille. Ce qui est ce que je recherchais. Ton astuce est bonne, très bonne, pour visualiser ce qu' il y a dans la corbeille et éventuellement restauré un élément qui s' y trouverait. Donc, les deux sont utiles et comme elles sont complémentaire, le lien de l' une vers l' autre l' est aussi. Ce n' est pas une pollution mais un complément d' information. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 14 Fév 2015 - 13:48 | |
| Nouvelle version: KGF.dll V4.25 du 14/02/2015 Nouveautés: - début des fonctions gérant WordModules modifiés: KGF.dllLa doc et les sources seront mises à jour prochainement. Voici les fonctions (auto-expliquantes) opérationnelles actuellement: - Code:
-
res% = dll_call0("IsWordRunning") res% = dll_call1("StartWord",1) res% = dll_call0("TerminateWord") res% = dll_call1("ConnectToWord",1) res% = dll_call0("DisconnectFromWord") res% = dll_call0("NewWordDocument") res% = dll_call0("CloseWordDocument") res% = dll_call0("SaveWordDocument") res% = dll_call1("SaveWordDocumentAs",adr(fil$)) res% = dll_call1("OpenWordDocument",adr(fil$))
Et voici un programme de démo: - Code:
-
' test_Word.bas
label isrunning, start, terminer, connect, disconnect, exit label new, close, save, saveas, open
dim res%, fil$
width 0,500 : height 0,300
button 1 : top 1,10 : left 1,10 : caption 1,"IsRunning" on_click 1,isrunning button 2 : top 2,30 : left 2,10 : caption 2,"Start" on_click 2,start button 3 : top 3,50 : left 3,10 : caption 3,"Terminate" on_click 3,terminer button 4 : top 4,70 : left 4,10 : caption 4,"Connect" on_click 4,connect button 5 : top 5,90 : left 5,10 : caption 5,"Disconnect" on_click 5,disconnect
button 11 : top 11,10 : left 11,110 : caption 11,"New" on_click 11,new button 12 : top 12,30 : left 12,110 : caption 12,"Close" on_click 12,close button 13 : top 13,50 : left 13,110 : caption 13,"Save" on_click 13,save button 14 : top 14,70 : left 14,110 : caption 14,"SaveAs" on_click 14,saveas button 15 : top 15,90 : left 15,110 : caption 15,"Open" on_click 15,open
button 900 : top 900,10 : left 900,310 : caption 900,"Exit" on_click 900,exit
save_dialog 901 : filter 901,"Documents Word|*.doc" open_dialog 902 : filter 902,"Documents Word|*.doc"
edit 903 : top 903,height(0)-60 : left 903,10 : width 903,width(0)-40
dll_on "KGF.dll"
end
isrunning: res% = dll_call0("IsWordRunning") select res% case 0: text 903,"Word n'est pas actif" case 1: text 903,"Word est actif" end_select return start: res% = dll_call1("StartWord",1) log() return terminer: res% = dll_call0("TerminateWord") log() return
connect: res% = dll_call0("IsWordRunning") if res%=1 then res% = dll_call1("ConnectToWord",1) log() return
disconnect: res% = dll_call0("DisconnectFromWord") log() return exit: res% = dll_call0("DisconnectFromWord") terminate
new: res% = dll_call0("NewWordDocument") log() return
close: res% = dll_call0("CloseWordDocument") log() return
save: res% = dll_call0("SaveWordDocument") log() return
saveas: text 903,"" fil$ = file_name$(901) if fil$="_" then return if instr(lower$(fil$),".doc")<>(len(fil$)-4) then fil$ = fil$ + ".doc" res% = dll_call1("SaveWordDocumentAs",adr(fil$)) log() return
open: text 903,"" fil$ = file_name$(902) if fil$="_" then return if instr(lower$(fil$),".doc")<>(len(fil$)-3) then fil$ = fil$ + ".doc" res% = dll_call1("OpenWordDocument",adr(fil$)) log() return
sub log() select res% case 0: text 903,"Ok" case -1: text 903,"Error" end_select end_sub Beaucoup de choses pourront encore venir - cela dépend un peu de vos demandes... | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: KGF_dll - nouvelles versions Sam 14 Fév 2015 - 13:51 | |
| Super Klaus, je viens de te poser une question sur une veille fonction de KGF, mais je vois que tu ne chôme pas. Ces fonctions marchent quelques soient les versions de Word ? Après, comment écrit-t-on dans l'objet Word créé ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 14 Fév 2015 - 14:15 | |
| Je vais regarder ta question, Jicehel.
Les fonctions Word sont censées marcher quelque soit la version Word. Il y a un doute sur le format de fichier (*.DOC actuellement), car ma version Word est limitée à ça (Office 2003). Mais d'autres seront possibles selon la demande. Il y a une vingtaine de formats possibles, et je ne veux pas mettre d'office tous ces formats.
Ecrire dans l'objet Word créé ? Je ferai des fonctions pour le positionner (page, ligne, colonne, ...), recherche de chaîne de caractère, insertion de texte à la position active, sélectionner du texte, copier et couper du texte sélectionné. C'est en cours. Mais Word est extrèmement vaste, et je n'ai aucuneintention de faire un wrapper exhaustif autour de toutes les fonctions Word. Seulement celles qui seront utiles pour ceux parmi nous qui s'y intéressent. | |
| | | Pedro
Nombre de messages : 1596 Date d'inscription : 19/01/2014
| Sujet: Début de Word. Sam 14 Fév 2015 - 14:51 | |
| Bonjour.
Dans le code du label 'open', merci de rectifier la ligne suivante:
if instr(lower$(fil$),".doc")<>(len(fil$)-3) then fil$ = fil$ + ".doc"
Il faut:
if instr(lower$(fil$),".doc")<>(len(fil$)-4) then fil$ = fil$ + ".doc" | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 14 Fév 2015 - 15:12 | |
| Non, Pédro ! Regarde: - Code:
-
abc.doc 1234567 tu vois que la fonction INSTR retournera 4, ce qui est bien len(fil$)-3 et non len(fil$-4) ! | |
| | | Pedro
Nombre de messages : 1596 Date d'inscription : 19/01/2014
| Sujet: Word. Sam 14 Fév 2015 - 15:16 | |
| | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: KGF_dll - nouvelles versions Sam 14 Fév 2015 - 18:44 | |
| Dommage pour moi, je n'ais plus Word. | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: KGF_dll - nouvelles versions Sam 14 Fév 2015 - 20:09 | |
| | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 14 Fév 2015 - 20:34 | |
| Moi non plus, ma version a expiré.... | |
| | | 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 - nouvelles versions Dim 15 Fév 2015 - 0:20 | |
| Même si vous ne disposez pas de Word, vous pouvez afficher, imprimer et copier des documents Word. Comment ? Tout simplement en téléchargeant Microsoft Word Viewer qui est un logiciel gratuit. Il est compatible avec : • Document Word (.docx) • Document Word avec macros activées (.docm) • Format RTF (.rtf) • Format Texte (.txt) • Formats Page Web (.htm, .html, .mht, .mhtml) • WordPerfect 5.x (.wpd) • Works 6.0 (.wps) • Works 7.0 (.wps) • XML (.xml) Son unique inconvénient est qu’il ne permet pas de modifier un document ni d’en créer. Si ça vous dit, vous pouvez le télécharger sur ce site | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF_dll - nouvelles versions Dim 15 Fév 2015 - 12:38 | |
| Nouvelle version: KGF.dll V4.27 du 15/02/2015 Nouveautés: - complément des fonctions gérant Word Modules modifiés: KGF.dll Les sources sont à jour. La doc le sera prochainement. En attendant, voici une doc simplifiée: - Code:
-
res% = dll_call0("IsWordRunning") res% = dll_call1("StartWord",1) res% = dll_call0("TerminateWord") res% = dll_call1("ConnectToWord",1) res% = dll_call0("DisconnectFromWord") res% = dll_call0("NewWordDocument") res% = dll_call0("CloseWordDocument") res% = dll_call0("SaveWordDocument") res% = dll_call1("SaveWordDocumentAs",adr(fil$)) res% = dll_call1("OpenWordDocument",adr(fil$)) res% = dll_call1("SendTextToWord",adr(txt$)) res% = dll_call0("CopyWordToClipboard") res% = dll_call0("CutWordToClipboard") res% = dll_call0("PasteClipboardToWord") res% = dll_call3("SearchTextInWord",start%,cs%,adr(txt$)) res% = dll_call4("ReplaceTextInWord",start%,cs%,adr(txt1$),adr(txt2$)) res% = dll_call2("SelectRangeInWord",start%,end%) Toutes ces fonctions sont opérationnelles. Et voici le programme démo pour tout ça (sauf SelectRangeInWord): - Code:
-
' test_Word.bas
label isrunning, start, terminer, connect, disconnect, exit label new, close, save, saveas, open, send, copy, cut, paste label search, nexts, replace, nextr
dim res%, fil$, txt$, fnd%, txt2$, casse%
width 0,500 : height 0,300
button 1 : top 1,10 : left 1,10 : caption 1,"IsRunning" on_click 1,isrunning button 2 : top 2,30 : left 2,10 : caption 2,"Start" on_click 2,start button 3 : top 3,50 : left 3,10 : caption 3,"Terminate" on_click 3,terminer button 4 : top 4,70 : left 4,10 : caption 4,"Connect" on_click 4,connect button 5 : top 5,90 : left 5,10 : caption 5,"Disconnect" on_click 5,disconnect
button 11 : top 11,10 : left 11,110 : caption 11,"New" on_click 11,new button 12 : top 12,30 : left 12,110 : caption 12,"Close" on_click 12,close button 13 : top 13,50 : left 13,110 : caption 13,"Save" on_click 13,save button 14 : top 14,70 : left 14,110 : caption 14,"SaveAs" on_click 14,saveas button 15 : top 15,90 : left 15,110 : caption 15,"Open" on_click 15,open
button 21 : top 21,10 : left 21,210 : caption 21,"SendText" on_click 21,send button 22 : top 22,30 : left 22,210 : caption 22,"Copy" on_click 22,copy button 23 : top 23,50 : left 23,210 : caption 23,"Cut" on_click 23,cut button 24 : top 24,70 : left 24,210 : caption 24,"Paste" on_click 24,paste
button 31 : top 31,10 : left 31,310 : caption 31,"Search" on_click 31,search button 32 : top 32,30 : left 32,310 : caption 32,"Search Next" on_click 32,nexts button 33 : top 33,50 : left 33,310 : caption 33,"Replace" on_click 33,replace button 34 : top 34,70 : left 34,310 : caption 34,"Replace Next" on_click 34,nextr check 35 : top 35,100 : left 35,310 : caption 35,"CaseSensitive"
button 900 : top 900,190 : left 900,10 : caption 900,"Exit" on_click 900,exit
save_dialog 901 : filter 901,"Documents Word|*.doc" open_dialog 902 : filter 902,"Documents Word|*.doc"
edit 903 : top 903,height(0)-60 : left 903,10 : width 903,width(0)-40
alpha 904 : top 904,130 : left 904,10 : caption 904,"Search:" edit 905 : top 905,130 : left 905,70 : width 905,400 alpha 906 : top 906,150 : left 906,10 : caption 906,"Replace:" edit 907 : top 907,150 : left 907,70 : width 907,400
dll_on "KGF.dll"
end
isrunning: res% = dll_call0("IsWordRunning") select res% case 0: text 903,"Word n'est pas actif" case 1: text 903,"Word est actif" end_select return start: res% = dll_call1("StartWord",1) log() return terminer: res% = dll_call0("TerminateWord") log() return
connect: res% = dll_call0("IsWordRunning") if res%=1 then res% = dll_call1("ConnectToWord",1) log() return
disconnect: res% = dll_call0("DisconnectFromWord") log() return exit: res% = dll_call0("DisconnectFromWord") terminate
new: res% = dll_call0("NewWordDocument") log() return
close: res% = dll_call0("CloseWordDocument") log() return
save: res% = dll_call0("SaveWordDocument") log() return
saveas: text 903,"" fil$ = file_name$(901) if fil$="_" then return if instr(lower$(fil$),".doc")<>(len(fil$)-4) then fil$ = fil$ + ".doc" res% = dll_call1("SaveWordDocumentAs",adr(fil$)) log() return
open: text 903,"" fil$ = file_name$(902) if fil$="_" then return if instr(lower$(fil$),".doc")<>(len(fil$)-3) then fil$ = fil$ + ".doc" res% = dll_call1("OpenWordDocument",adr(fil$)) log() return send: txt$ = text$(905) res% = dll_call1("SendTextToWord",adr(txt$)) log() return
copy: res% = dll_call0("CopyWordToClipboard") log() return
cut: res% = dll_call0("CutWordToClipboard") log() return
paste: res% = dll_call0("PasteClipboardToWord") log() return search: txt$ = text$(905) casse% = checked(35) res% = dll_call3("SearchTextInWord",0,casse%,adr(txt$)) fnd% = res% log1() return
nexts: txt$ = text$(905) casse% = checked(35) res% = dll_call3("SearchTextInWord",fnd%+1,casse%,adr(txt$)) fnd% = res% log1() return
replace: txt$ = text$(905) txt2$ = text$(907) casse% = checked(35) res% = dll_call4("ReplaceTextInWord",0,casse%,adr(txt$),adr(txt2$)) fnd% = res% log1() return
nextr: txt$ = text$(905) txt2$ = text$(907) casse% = checked(35) res% = dll_call4("ReplaceTextInWord",fnd%+1,casse%,adr(txt$),adr(txt2$)) fnd% = res% log1() return
sub log() select res% case 0: text 903,"Ok" case -1: text 903,"Error" end_select end_sub
sub log1() if res%=-1 then text 903,"Error" if res%=-2 then text 903,"Not found" if res%>=0 then text 903,"Trouvé en position "+str$(res%) end_sub
| |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: KGF_dll - nouvelles versions Dim 15 Fév 2015 - 12:58 | |
| Ah oui moi je dis super | |
| | | Contenu sponsorisé
| Sujet: Re: KGF_dll - nouvelles versions | |
| |
| | | | KGF_dll - nouvelles versions | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |