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 |
|
|
| bidouillage de fichiers en genealogie | |
| | |
Auteur | Message |
---|
maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 9:27 | |
| Bonjour Je vous expose mon problème :
En Genealogie on associe chaque fois que possible, un media à un événement. Ce peut être l'acte de naissance, mariage etc. Mais aussi photo de la personne concernée.
Mon logiciel dans sa nouvelle version crée dans un dossier baptisé Media des répertoires dans lesquels se trouve un seul média. (j'ai 3000 médias donc 3000 répertoires !) Ce média de surcroit est une copie compressée, bidouillée etc du média original que je stocke dans un répertoire qui m'est propre Le nom des répertoires créés est assez esoterique et je n'ai pas trouvé de logique dans leur nomination ... ex : #27977 (ça commence toujours par un #)
A l'interieur se trouve donc mon fichier JPG bricolé. Exemple :
D:\genealogie h14\Demo-Mael121201.hmw\Media\#27977\n_vanderesse_georges_roland_clement_ac55028ec55028.JPG avec 644 ko
Ce même fichier se trouve dans mon vrai répertoire media sous ce même nom D:\genealogie h14\actes_vanderesse_nizet\n_vanderesse_georges_roland_clement_ac55028ec55028.JPG mais non trafiqué avec 3840 ko
Mon souci est de lire dans tous ces répertoires #XXXXX le nom du fichier, aller chercher le bon et le mettre à la place de l'ancien afin de conserver la qualité de l'image.
J'ai fait l'essai manuellement, le logiciel l'accepte et j'ai bien sûr une rafale de sauvegardes.Mais me taper plus de 3000 médias à la main !!!
L'impression que j'ai... Est que BSD à l'origine du programme a voulu conserver sous un même répertoire tous les médias mais pourquoi les avoir altérés. Silence radio de leur coté...
J'ai vu qu'on pouvait passer d'un fichier à un autre, mais d'un répertoire à un autre ?
En tout cas merci de ce que vous pourrez me donner comme tuyaux. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 11:29 | |
| Que je comprenne bien: tu veux parcourir tous les sous-dossiers de D:\genealogie h14\Demo-Mael121201.hmw\Media\ dont le nom commence par #, chercher le nom de fichier contenu dans chacun de ces dossiers, puis remplacer ce fichier par le fichier homonyme du dossier D:\genealogie h14\actes_vanderesse_nizet\ ? Si c'est cela, ça peut être fait en Panoramic, et je peux te donner un exemple de programme pour ça. | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: Re: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 11:50 | |
| Oui Klauss c'est bien cela. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 11:51 | |
| OK. Je te fais un code et je le posterai bientôt. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Oct 2013 - 11:56 | |
| Perso, je me sers de KGF.dll pour cette exercice. Je m' explique :
1/ recherche des fichiers locaux 1.1/ extraction de la date du fichier avec KGF.dll 1.2/ stockage dans une dlist ( date | nom du fichier ) 2/ Sélection d'un fichier dans la liste 3/ recherche du fichier sélectionné dans le dossier distant 3.1/ extraction de la date par la dll 4/ comparaison des deux dates 5/ si fichier local plus récent = mise à jour du dossier distant. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 12:01 | |
| Voici ce que j'ai pu pondre en quelques minutes. Je n'ai pas pu le tester chez moi, car la configuration est trop spécifique. Un conseil: avant de lancer le programme, sauvegarde TOUT D:\genealogie h14\Demo-Mael121201.hmw\Media\ vers une autre destination. - Code:
-
' pour Maeliloule dossier dim cible$ : cible$ = "D:\genealogie h14\Demo-Mael121201.hmw\Media\" dim source$ : source$ = "D:\genealogie h14\actes_vanderesse_nizet\" dim f$, n$, i%, d$, photo$
dlist 1
progress_bar 2 : top 2,20 : left 2,20 : width 2,width(0) - 60
dir_change cible$ : ' se positionner dans le dossier ciblé f$ = file_find_first$ : ' récupérer le premier nom de fichier while f$<>"_" : ' boucle sur le contenu du dossier n$ = file_extract_name$(f$) : ' éliminer tout sauf le nom du fichier if left$(n$,1)="#" then item_add 1,f$ : ' si c'est un #xxx, alors mémoriser f$ = file_find_next$ : ' chercher le fichier suivant end_while : ' fin de la boucle de recherche file_find_close : ' clore la recherche proprement
if count(1)=0 message "Le dossier "+cible$+" est vide !" terminate end_if
' ici, la DLIST 1 contient la liste des dossiers à traiter min 2,0 : max 2,count(1) position 2,0 for i%=1 to count(1) : ' boucle sur tous les dossiers à traiter d$ = item_read$(1,i%) : ' récupérer le nom du dossier dir_change d$ : ' se positionner dans ce dossier f$ = file_find_first$ : ' ce dossier est censé contenir UN SEUL fichier file_find_close : ' terminer la recherche proprement if f$<>"_" : ' test par sécurité... n$ = file_extract_name$(f$) : ' prendre juste le nom photo$ = source$ + n$ : ' construire le nom de la photo originale if file_exists(photo$) : ' test existence par sécurité... file_delete f$+n$ : ' supprimer la photo réduite file_copy photo$,f$+n$ : ' et remplacer par la photo originale end_if end_if position 2,i% next i%
message "Terminé." terminate
end
Dernière édition par Klaus le Mar 22 Oct 2013 - 14:37, édité 2 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Oct 2013 - 12:13 | |
| Voilà ce dont je me sers ( avant il faut créer le fichier *.inf ): Création du fichier *.inf : - Code:
-
dim b$,c$,sep%,sep2% O_Form(0,0,1,0,0,350,530,"detect_files") O_Memo(1,0,1,10,10,300,500,""):bar_both 1 b$="C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\" c$="C:\Users\Yannick\Desktop\Panoramic Le Mag\" sep%=len(b$) sep2%=len(c$) dll_on "KGF.dll" detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Articles") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Articles_en") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Cours") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Manuels") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Sources_bas") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Subs") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Telechargements") detect_fic("C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM_le_site\Images") dll_off file_save 1,"C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM.inf" terminate end
sub detect_fic(dir$) dim_local a$,dos$,fichier$,dat$,res%,x%,g$,d$,p%,line%,cpt% ,line$ cpt%=0 if len(dir$)>sep% dos$=right$(dir$,len(dir$)-sep%) else dos$=right$(dir$,len(dir$)-sep2%) end_if Item_add 1,"["+dos$+"]" line%=count(1) dir_change dir$ a$=file_find_first$ p%=0 for x%=1 to len(a$) if x%=1 :d$=a$:end_if g$=left$(d$,1) if len(d$)>1:d$=right$(d$,len(d$)-1):end_if if g$="." :p%=1:exit_for:end_if next x% if left$(a$,1)<>"." and p%=1 fichier$=dir$+"\"+a$ dat$=string$(255," " res% = dll_call2("GetFileDate",adr(fichier$),adr(dat$)) dat$=trim$(dat$) item_add 1,left$(dat$,10)+" - "+right$(dat$,len(dat$)-10)+" | "+a$ cpt%=cpt%+1 end_if a$=file_find_next$ while a$<>"_" p%=0 for x%=1 to len(a$) if x%=1 :d$=a$:end_if g$=left$(d$,1) if len(d$)>1:d$=right$(d$,len(d$)-1):end_if if g$="." :p%=1:exit_for:end_if next x% if left$(a$,1)<>"." and p%=1 fichier$=dir$+"\"+a$ dat$=string$(255," ") res% = dll_call2("GetFileDate",adr(fichier$),adr(dat$)) dat$=trim$(dat$) item_add 1,left$(dat$,10)+" - "+right$(dat$,len(dat$)-10)+" | "+a$ cpt%=cpt%+1 end_if a$=file_find_next$ end_while file_find_close line$=item_read$(1,line%) item_delete 1,line% item_Insert 1,line%,line$+"["+str$(cpt%)+"]" end_sub
#include "OBJ_SUB.bas" Vérificateur : - Code:
-
dim inf$,p%,nouvo%,modif%,supprim%
inf$="C:\Users\Yannick\Desktop\Panoramic Le Mag\PLM.inf"
O_Form(0,0,1,0,0,650,730,"detect_files") O_Alpha(5,0,1,5,10,0,0,"Rapport"):font_bold 5 O_Memo(1,0,1,20,10,200,700,""):bar_both 1 O_Dlist(2,inf$) O_Alpha(4,0,1,225,10,0,0,"Fichiers modifiés"):font_bold 4 O_Memo(3,0,1,240,10,200,700,""): bar_both 3 O_Alpha(6,0,1,445,10,0,0,"Fichiers supprimés"):font_bold 6 O_Memo(7,0,1,460,10,150,700,""): bar_both 7 O_Dlist(8,"")
O_Form(100,0,1,0,0,300,750,"visu") O_Memo(101,100,1,5,5,240,720,""):bar_both 101 dll_on "KGF.dll" verif_Nfiles() dll_off end
sub verif_Nfiles() dim_local x%,a$,sep%,dir$,Nfile$,Nfile%,b$,file$,line$,line%,cpt%,erase%,z% ,Nbfile% for x%=1 to count(2) a$=item_read$(2,x%) if left$(a$,1)="[" nouvo%=0 : Modif%=0 :Nbfile%=0 sep%=instr(a$,"]") dir$=mid$(a$,2,(sep%-2)) Nfile$=trim$(right$(a$,len(a$)-sep%)) sep%=instr(Nfile$,"]") Nfile$=mid$(Nfile$,2,sep%-2) Nfile%=val(Nfile$) item_add 1,dir$ line%=count(1) if x%=1 dir$="C:\Users\Yannick\Desktop\Panoramic Le Mag\"+dir$ else dir$="C:\Users\Yannick\Desktop\Panoramic Le Mag\"+"PLM_le_site\"+dir$ end_if dir_change dir$ item_add 101,dir$ b$=file_find_first$ verif_is_file(b$) if p%=2 file$=dir$+"\"+b$ Compare(file$,x%,Nfile%,dir$) item_add 8,file$ Nbfile%=Nbfile%+1 end_if b$=file_find_next$ while b$<>"_" verif_is_file(b$) if p%=2 file$=dir$+"\"+b$ Compare(file$,x%,Nfile%,dir$) item_add 8,file$ Nbfile%=Nbfile%+1 end_if b$=file_find_next$ end_while file_find_close
supprim% =0 for z%=x%+1 to x%+Nfile% a$=item_read$(2,z%) sep%=instr(a$,"|") a$=right$(a$,len(a$)-sep%) a$=dir$+"\"+trim$(a$) cpt%=0 : erase%=0 repeat cpt%=cpt%+1 b$=item_read$(8,cpt%) if a$=b$ :erase%=1:exit_repeat:end_if
until cpt%=count(8) if erase%=0 supprim%=supprim%+1 item_add 7,a$ end_if next z%
item_insert 1,line%+1,"["+str$(Nbfile%) +"]fichiers" item_insert 1,line%+2,"["+str$(modif%) +"]modifié(s)" item_insert 1,line%+3,"["+str$(supprim%)+"]supprimé(s)" item_insert 1,line%+4,"["+str$(nouvo%) +"]Nouveau(x)" end_if Next x% end_sub
sub verif_is_file(f$) dim_local x%,d$,g$ p%=0 if left$(f$,1)<>".":p%=1:end_if for x%=1 to len(f$) if x%=1 :d$=f$:end_if g$=left$(d$,1) if len(d$)>1:d$=right$(d$,len(d$)-1):end_if if g$="." :p%=p%+1:exit_for:end_if next x% end_sub
sub Compare(f$,dep%,nf%,do$) dim_local a$,file2$,day1$,day2$,heur1$,heur2$,sep%,sep2%,y%,fichier$,dat$,res%,compare%,mod% compare%=0 :mod%=0 for y%=dep%+1 to dep%+nf% a$=item_read$(2,y%) sep%=instr(a$,"|") file2$=trim$(right$(a$,len(a$)-sep%)) file2$=do$+"\"+file2$ if f$=file2$ compare%=1 dat$=string$(255," ") fichier$=f$ res% = dll_call2("GetFileDate",adr(fichier$),adr(dat$)) dat$=trim$(dat$) day1$=left$(dat$,10):heur1$=trim$(right$(dat$,len(dat$)-10)) day2$=left$(a$,10) :sep%=instr(a$,"-"):sep2%=instr(a$,"|"):heur2$=trim$(mid$(a$,sep%+1,sep2%-(sep%+1))) if day1$<>day2$ mod%=1 item_add 3,file2$ else if heur1$<>heur2$ mod%=1 item_add 3,file2$ end_if end_if exit_for end_if next y% if mod%=1 modif%=modif%+mod% end_if if compare%=0 Nouvo%=Nouvo%+1 item_add 1,"New file :"+f$ end_if end_sub
#include "OBJ_SUB.bas"
Bon, il faut tout adapter mais j' ai fait au plus vite... le premier détecte tous les fichiers du répertoire principale et des sous répertoires et crée un fichier *.inf. le deuxième compare le fichier *.inf avec l' état présent des répertoires et annonce les fichiers modifiés, ajoutés ou supprimés. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 12:16 | |
| Très bonne solution pour "synchroniser" des dossiers, Ygeronimi ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Oct 2013 - 12:27 | |
| Merci Klaus.
Dans le premier, j' ai mis les chemins de tous les dossiers car ce code ( en principe ) ne sert qu'une fois pour la création du premier fichier *.inf.
Je me suis arrêté à la vérif. mais de là on peut envisagé la sauvegarde de l' état dans le fichier *.inf après les actions souhaitées compte tenu du nouvel état des répertoires.
Pour ma part, cela me permet de savoir qui a changé et doit être remplacé sur le serveur du site du mag et si j' arrive à résoudre un souci de connexion avec KGF et magix de faire cette mise à jour de magix automatiquement. | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: Re: bidouillage de fichiers en genealogie Mar 22 Oct 2013 - 12:28 | |
| Merci beaucoup pour ce coup de main !
Je ne testerai malheureusement cela que dans deux jours... Pour cause d'enterrement, donc déplacement en vue.
Je vous dis quoi. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Oct 2013 - 12:43 | |
| , Prends ton temps. Cela nous laissera celui de faire un code plus abouti. Je vais essayer de "procéduriser" le mien. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 22 Oct 2013 - 20:58 | |
| Je n' ai pas regardé si c' était le même code que Klaus mais chez moi cela fonctionne. - Code:
-
dim dir_log$,dir_save$
dir_log$=dir_current$+"\D_Log" dir_save$=dir_current$+"\D_Save"
ExchangeFiles(dir_log$,dir_save$) end
Sub ExchangeFiles(Dlog$,Dsave$) dim_local obj%,f$,fic$,fic2$,dir$,x% obj%=number_objects+1 dlist obj% dir_change Dlog$ f$=file_find_first$ if left$(f$,1)="#" :item_add obj%,Dlog$+"\"+f$ :print Dlog$+f$ :end_if f$=file_find_next$ while f$<>"_" if left$(f$,1)="#" :item_add obj%,Dlog$+"\"+f$ :print Dlog$+f$ :end_if f$=file_find_next$ end_while file_find_close for x%=1 to count(obj%) dir$=item_read$(obj%,x%) dir_change dir$ f$=file_find_first$ if f$<>"." and f$<>".." print f$ fic$=dir$+"\"+f$ fic2$=Dsave$+f$ if file_exists(fic2$)=1 file_delete fic$ file_copy fic2$,fic2$ caption 0,"Exchange "+f$ end_if end_if f$=file_find_next$ while f$<>"_" if f$<>"." and f$<>".." print f$ fic$=dir$+"\"+f$ fic2$=Dsave$+"\"+f$ print fic$ print fic2$ if file_exists(fic2$)=1 file_delete fic$ file_copy fic2$,fic$ caption 0,"Exchange "+f$ else message "fichier : "+fic2$+chr$(13)+"Inexistant..." end_if end_if f$=file_find_next$ end_while file_find_close next x% Message "Mise à jour terminée !" End_Sub Pour tester, j' ai créer un dossier "D_Save" avec les fichiers nouveaux (des .txt avec "nouveau" en texte ) et un dossier "D_log" avec trois dossiers "#xxxxx" contenant chacun un .txt contenant "ancien" en texte) les fichiers .txt nommés comme il se doit pour les vérif : T1.txt,T2.txt,T3.txt... le source et les deux dossiers sont placés dans le même répertoire ( peu importe le nom ) . Tu vois, tu testes, tu adaptes et tu adoptes si tu veux... | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: Re: bidouillage de fichiers en genealogie Sam 26 Oct 2013 - 18:15 | |
| Croyez bien que c'est involontaire. Je n'ai pas pu tester les programmes... Car à un décès s'en est suivi un autre...
Il y a des semaines qui sont vraiment merdiques.
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Sam 26 Oct 2013 - 18:32 | |
| Prends ton temps et essaie de ne pas te laisser submerger. Je sais ce que c'est. Alors, avec toute ma sympathie... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 26 Oct 2013 - 18:47 | |
| Comme dit Klaus, prends ton temps. Il y a des événements prioritaires aux autres. Avec toute ma sympathie aussi... | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: bidouillage de fichiers en genealogie Sam 26 Oct 2013 - 18:57 | |
| @maelilou
Mes plus sincères condoléances. | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: bidouillage de fichiers en genealogie Sam 26 Oct 2013 - 19:34 | |
| Bon, je peux me connecter en me servant de mon S3 en modem, cool. Ça me permet de lire plus simplement le forum et de présenter mes condoléances pour ces décès. | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: merci Sam 9 Nov 2013 - 11:11 | |
| Bonjour et merci pour vos pensées.
Me voici revenu et vais pouvoir me remettre à mon problème. Et de plus j'ai de la lecture, même si je suis passé de temps à autres en coup de vent.
Bonne journée. | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 11:51 | |
| @ Klaus
Je viens d’essayer ton programme, mais sans succés...
J'en ai bien compris le principe mais ne voit pas où ça pêche. Il ne s'inscrit rien dans la Dlist 1 et rien dans la barre de progression.
Mais si au lieu de Dlist je mets List là je vois défiler mes fichiers.
Mais ensuite je ramasse une erreur "unknown directory line 29"
Je vais creuser la chose. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 12:32 | |
| Bonjour maelilou. - maelilou a écrit:
- Il ne s'inscrit rien dans la Dlist 1 et rien dans la barre de progression.
C' est parfaitement normal. Un DLIST est par définition un objet système invisible . | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 13:21 | |
| Juste avant la ligne 19, insére: - Code:
-
message "dossier: "+d$ Tu valides au fur et à mesure les messages qui apparaissent, et tu as ainsi le nom de dossier sur lequel ça plante. Ensuite, on y verra plus clair... | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 14:54 | |
| ça marque :
"Dossier : "
Donc D$ est vide ou à blanc. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 15:02 | |
| Alors, insère si'il te plaît, juste devant la ligne 14, la ligne suivante: - Code:
-
message f$+"==>["+n$+"]"
On devrait voir quel nom de dossier génère une chaîne vide entre les crochets... En fonction de ça, je pourrais adapter le code source. | |
| | | maelilou
Nombre de messages : 180 Age : 76 Localisation : Ardennes françaises Date d'inscription : 02/05/2012
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 16:14 | |
| #27973==>[#27973]
Voilà ce qui s'inscrit dans le message. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: bidouillage de fichiers en genealogie Mer 20 Nov 2013 - 17:39 | |
| Euh... est-ce le premier message du programme ? As-tu passé l'ensemble des messages pour repérer celui qui n'affiche rien entre les crochets ("[]") ? C'est le nom correspondant à gaiuche qui est intéressant. Autre solution: essaie cette version modifiée, qui élimine systématiquement les lignes blanches... - Code:
-
' pour Maeliloule dossier dim cible$ : cible$ = "D:\genealogie h14\Demo-Mael121201.hmw\Media\" dim source$ : source$ = "D:\genealogie h14\actes_vanderesse_nizet\" dim f$, n$, i%, d$, photo$
dlist 1
progress_bar 2 : top 2,20 : left 2,20 : width 2,width(0) - 60
dir_change cible$ : ' se positionner dans le dossier ciblé f$ = file_find_first$ : ' récupérer le premier nom de fichier while f$<>"_" : ' boucle sur le contenu du dossier n$ = file_extract_name$(f$) : ' éliminer tout sauf le nom du fichier if left$(n$,1)="#" then item_add 1,f$ : ' si c'est un #xxx, alors mémoriser f$ = file_find_next$ : ' chercher le fichier suivant end_while : ' fin de la boucle de recherche file_find_close : ' clore la recherche proprement
if count(1)=0 message "Le dossier "+cible$+" est vide !" terminate end_if
' ici, la DLIST 1 contient la liste des dossiers à traiter min 2,0 : max 2,count(1) position 2,0 for i%=1 to count(1) : ' boucle sur tous les dossiers à traiter d$ = item_read$(1,i%) : ' récupérer le nom du dossier dir_change d$ : ' se positionner dans ce dossier if trim$(d$)<>"" f$ = file_find_first$ : ' ce dossier est censé contenir UN SEUL fichier file_find_close : ' terminer la recherche proprement if f$<>"_" : ' test par sécurité... n$ = file_extract_name$(f$) : ' prendre juste le nom photo$ = source$ + n$ : ' construire le nom de la photo originale if file_exists(photo$) : ' test existence par sécurité... file_delete f$+n$ : ' supprimer la photo réduite file_copy photo$,f$+n$ : ' et remplacer par la photo originale end_if end_if position 2,i% end_if next i%
message "Terminé." terminate
end
| |
| | | Contenu sponsorisé
| Sujet: Re: bidouillage de fichiers en genealogie | |
| |
| | | | bidouillage de fichiers en genealogie | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |