JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Sub infos fichier Jeu 29 Aoû 2013 - 23:34 | |
| Juste une petite sub, pour entretenir la flamme, qui donne les caractéristiques d'un fichier: taille, date de création, date de dernière écriture, attributs. Ces résultats sont rendus dans le clipboard (4 lignes): - Code:
-
DIM f$ MEMO 1: WIDTH 1,550: HEIGHT 1,200: FONT_NAME 1,"Lucida Console" f$ = "c:\PANORAMIC\Sub_Bib.bas": ' par exemple FileInfo(f$) CLIPBOARD_PASTE 1 END
SUB FileInfo(f$) ' Infos du fichier f$ rendues dans le clipboard sur 4 lignes: ' TA: taille, TC: date création, TW: date dernier accès, AT: attributs du fichier IF LABEL("Exec_hide") = 0 THEN LABEL Exec_hide DIM_LOCAL f_a$, f_b$, f_k%, prg_a$, s_cr$, b_at$ s_cr$ = "C:\Vbscript.vbs": b_at$ = "C:\Bat.bat" prg_a$ = "CMD.exe /C DIR " + f$ + " /TC /-C | clip" GOSUB Exec_hide f_b$ = CLIPBOARD_STRING_PASTE$ f_k% = INSTR(f_b$,"/"): f_a$ = "TA:"+LTRIM$(MID$(f_b$,f_k%+15,18))+CHR$(13)+CHR$(10) f_a$ = f_a$+"TC:"+MID$(f_b$,f_k%-2,10)+MID$(f_b$,f_k%+9,6)+CHR$(13)+CHR$(10) prg_a$ = "CMD.exe /C Dir " + f$ + " /TW /-C | clip" GOSUB Exec_hide f_b$ = CLIPBOARD_STRING_PASTE$ f_k% = INSTR(f_b$,"/"): f_a$ = f_a$+"TW:"+MID$(f_b$,f_k%-2,10)+MID$(f_b$,f_k%+9,6) prg_a$ = "CMD.exe /C ATTRIB " + f$ + " | clip" GOSUB Exec_hide f_b$ = CLIPBOARD_STRING_PASTE$ f_a$ = f_a$ + CHR$(13)+CHR$(10)+ "AT:"+RTRIM$(LEFT$(f_b$,12)) CLIPBOARD_STRING_COPY f_a$: FILE_DELETE b_at$: FILE_DELETE s_cr$ EXIT_SUB Exec_hide: ' pour éviter la fenêtre noire d'affichage des fonctions Dos FILE_OPEN_WRITE 9, b_at$: FILE_WRITELN 9, prg_a$: FILE_CLOSE 9: ' Fichier .bat prg_a$ = "CreateObject(" + CHR$(34) + "Wscript.Shell" + CHR$(34) + ").Run " prg_a$ = prg_a$ + CHR$(34) + b_at$ + CHR$(34) + ",0,True" FILE_OPEN_WRITE 9, s_cr$: FILE_WRITELN 9, prg_a$: FILE_CLOSE 9: ' script vbs EXECUTE_WAIT "WSCRIPT.exe " + s_cr$: ' Exécution du script RETURN END_SUB j'ai remarqué que parfois la date de dernière écriture renvoyée (paramètre /TW) est antérieure à la date de création (paramètre /TC), c'est manifestement faux, mais je ne vois pas pourquoi...
Dernière édition par JL35 le Jeu 29 Aoû 2013 - 23:38, édité 1 fois | |
|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Sub infos fichier Jeu 29 Aoû 2013 - 23:37 | |
| tu avais aussi fait la sub dir si tu ne vas pas mettre tout ça sur le webdav d'ygeronimi, je te préviens je finirais par le faire | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Sub infos fichier Jeu 29 Aoû 2013 - 23:41 | |
| Bonsoir Jicehel, on s'est croisés, j'éditais pour mettre une remarque. Mais je te l'ai déjà dit, tu peux mettre tout ce que tu veux chez ygeronimi, c'est du domaine public (mais est-ce que ça en vaut bien la peine ?), moi je ne sais même pas comment on fait... Sur ce... | |
|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Ven 30 Aoû 2013 - 16:47 | |
| Ca répond : TA:" /TC /-C | clip" TC:e /C DIR "+ f$ + TW:e /C DIR "+ f$ + AT:DIM f$ MEMO quelque soit le fichier exploré. Curieux, curieux ??? | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Sub infos fichier Ven 30 Aoû 2013 - 17:09 | |
| Bonjour jjn4, ça c'est curieux, chez moi ça répond bien (avec l'exemple ci-dessus): - Code:
-
TA:93371 TC:15/01/2013 18:09 TW:29/08/2013 23:29 AT:A peut-être un problème avec le vbscript de masquage de la fenêtre noire ? il faudrait mettre des points avec des 'MESSAGE" dans la sub, pour voir où ça déraille... Encore plus curieux, tu te retrouves avec le début du programme dans le clipboard (DIM f$ MEMO) Essaie de mettre: EXECUTE_WAIT prg_a$: RETURN en tête du s/p Exec_hide, et il faut aussi court-circuiter les deux File_Delete avant le Exit_Sub, pour voir si c'est bien le vbscript qui déconne, moyennant quoi tu auras les fenêtres noires successives... @jjn4, avec quelques mois de retard Je crois que j'ai compris pourquoi ça ne marche pas chez toi: Je redirige les sorties de la sub sur le clipboard avec le 'pipe' | clip. Or cette fonction clip n'existe que depuis Windows Vista et au-delà, d'où j'en déduis que tu es encore sous XP (ou antérieur ?). Du coup tu récupères le contenu du clipboard tel qu'il était avant l'appel de la sub... désolé... | |
|
Contenu sponsorisé
| Sujet: Re: Sub infos fichier | |
| |
|