Newsgroup: it.comp.appl.access
Titolo: Attributi file

Ciao a tutti!
mi potete aiutare ad estrarre in una common dialog che ho gia' realizzato in 
una maschera tutti i file di una determinata cartella che abbiano attributo 
"data ultima modifica" between un range di date che specifico nella form?
Forse sono stato un po' criptico....
Spero mi capirete lo stesso....
Grazie,
LoZio 


Io lo farei con le API:
      Declare Function GetFileAttributes Lib "kernel32" Alias
"GetFileAttributesA" (ByVal lpFileName As String) As Long
Se non ne hai padronanza... meglio usare FileSearch che è Nativo di
Application.
Se apri l'Help vedi che FileSearch(ci sono anche esempi di come usarlo)
espone delle proprietà tra le quali : LastModified
In questo modo puoi popolare una ListBox con solo l'elenco dei file che
hanno tal proprietà > TuaData.
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.alessandrobaraldi.it
---------------------------------------------------------------------------


Ciao, e grazie per la risposta.
Ho provato con le API ma mi incasino di brutto!
Ho poi provato come suggerisci con filesearch con metodo lastmadified,
ma accetta come parametro solo una costante tipo:
msoLastModifiedAnyTime
msoLastModifiedLastMonth
msoLastModifiedLastWeek
msoLastModifiedThisMonth
msoLastModifiedThisWeek
msoLastModifiedToday
msoLastModifiedYesterday
che sono dei long.
Cosa mi puoi suggerire per passargli una data?
Grazie comunque.

Ciao, e grazie per la risposta.
Ho provato con le API ma mi incasino di brutto!
---------------------------------------------------------------
[Risposta]
---------------------------------------------------------------
Beh sono consapevole che non siano di accesso immediato... ma su Allapi se
cerchi questa chiamata ti espone anche il codice di esempio che è abbastanza
comprensibile :
Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA"
(ByVal lpFileName As String) As Long
Se provi a comprenderne il codice vedi che la chiamata:
    hSearch = FindFirstFile(path & "*", WFD)
    If hSearch <> INVALID_HANDLE_VALUE Then
popola la variabile WFD con la struttura WIN32_FIND_DATA che casualmente
contiene quello che cerchi...!
Il tutto se la chiamata va a buon fine, quindi dopo il controllo
successivo...!
Quindi otterrai in:
    Debug.Print "NomeFile=" & StripNulls(WFD.cFileName) & " Ultima
Modifica=" & WFD.ftLastAccessTime
---------------------------------------------------------------
Ho poi provato come suggerisci con filesearch con metodo lastmadified,
ma accetta come parametro solo una costante tipo:
msoLastModifiedAnyTime
msoLastModifiedLastMonth
msoLastModifiedLastWeek
msoLastModifiedThisMonth
msoLastModifiedThisWeek
msoLastModifiedToday
msoLastModifiedYesterday
che sono dei long.
Cosa mi puoi suggerire per passargli una data?
---------------------------------------------------------------
[Risposta]
---------------------------------------------------------------
msoLastModifiedAnyTime
Però ti suggerisco di passare il valore della Costante e non il Nome
Implicito...!
msoLastModifiedAnyTime           7
msoLastModifiedLastMonth         5
msoLastModifiedLastWeek          3
msoLastModifiedThisMonth         6
msoLastModifiedThisWeek         4
msoLastModifiedToday               2
msoLastModifiedYesterday         1
---------------------------------------------------------------
Grazie comunque.
Prego


Non so come ringraziarti delle risposte.
Ho implementato la api come da tuo suggerimento e funziona.
la parte lastwrite me la estrae in due long (credo), dwLowDateTime e
dwHighDateTime  che mi vengono rappresentati come numeri.
Sai dirmi cosa rappresentano per ogni file?
Posso convertirli in formato data?
Ho cercato in giro, senza trovarla, una utility longtodate, ma non ho
capito se sono sulla strada giusta per interpretare questi numeri.
Ciao e grazie ancora.
Spero che questa cosa possa essere utile anche a qualcun altro.
Suppongo di si, questo gruppo di discussione e' proprio utile a tutti.


Leggi questo:
http://support.microsoft.com/kb/188768
