Newsgroup: it.comp.lang.delphi
Titolo: proprieta' di una directory

Salve a tutti, avrei la necessita' di creare un programma che mi faccia lo
scan di un disco e che per ogni directory principale mi dica anche quanto
spazio occupa, tipo l'opzione proprieta' di gestione risorse.
Esiste una funzione che mi puo' aiutare..
Grazie in anticipo
Saluti Marco

su torry trovi le lib necessarie...
http://www.torry.ru/


Ho fatto una ricerca veloce sia su torry che su DSP, ma non ho trovato
niente che calcolasse anche la dimensione in byte di una directory, se
magari conosci gia' il nome  mi faresti un piacere.
Grazie Marco.

ora non ricordo il nome, ma se vuoi puoi fare con funzioni API.....
Retrieves information about an object in the file system, such as a file, a
folder, a directory, or a drive root.
WINSHELLAPI DWORD WINAPI SHGetFileInfo(
    LPCTSTR pszPath,
    DWORD dwFileAttributes,
    SHFILEINFO FAR *psfi,
    UINT cbFileInfo,
    UINT uFlags
   );
Parameters
pszPath
Pointer to a buffer that contains the path and filename. Both absolute and
relative paths are valid. If uFlags includes the SHGFI_PIDL, value pszPath
must be the address of an ITEMIDLIST structure that contains the list of
item identifiers that uniquely identifies the file within the shell's name
space.
This string can use either short (the 8.3 form) or long filenames.
dwFileAttributes
Array of file attribute flags (FILE_ATTRIBUTE_ values). If uFlags does not
include the SHGFI_USEFILEATTRIBUTES value, this parameter is ignored.
psfi and cbFileInfo
Address and size, in bytes, of the SHFILEINFO structure that receives the
file information.
uFlags
Flag that specifies the file information to retrieve. This parameter can be
a combination of the following values:
SHGFI_ATTRIBUTES Retrieves the file attribute flags. The flags are copied to
the dwAttributes member of the structure specified by psfi.
SHGFI_DISPLAYNAME Retrieves the display name for the file. The name is
copied to the szDisplayName member of the structure specified by psfi.The
returned display name uses the long filename, if any, rather than the 8.3
form of the filename.
SHGFI_EXETYPE Returns the type of the executable file if pszPath identifies
an executable file. For more information, see the comments below.
SHGFI_ICON Retrieves the handle of the icon that represents the file and the
index of the icon within the system image list. The handle is copied to the
hIcon member of the structure specified by psfi, and the index is copied to
the iIcon member. The return value is the handle of the system image list.
SHGFI_ICONLOCATION Retrieves the name of the file that contains the icon
representing the file. The name is copied to the szDisplayName member of the
structure specified by psfi.
SHGFI_LARGEICON Modifies SHGFI_ICON, causing the function to retrieve the
file's large icon.
SHGFI_LINKOVERLAY Modifies SHGFI_ICON, causing the function to add the link
overlay to the file's icon.
SHGFI_OPENICON Modifies SHGFI_ICON, causing the function to retrieve the
file's open icon. A container object displays an open icon to indicate that
the container is open.
SHGFI_PIDL Indicates that pszPath is the address of an ITEMIDLIST structure
rather than a path name.
SHGFI_SELECTED Modifies SHGFI_ICON, causing the function to blend the file's
icon with the system highlight color.
SHGFI_SHELLICONSIZE Modifies SHGFI_ICON, causing the function to retrieve a
shell-sized icon. If this flag is not specified, the function sizes the icon
according to the system metric values.
SHGFI_SMALLICON Modifies SHGFI_ICON, causing the function to retrieve the
file's small icon.
SHGFI_SYSICONINDEX Retrieves the index of the icon within the system image
list. The index is copied to the iIcon member of the structure specified by
psfi. The return value is the handle of the system image list.
SHGFI_TYPENAME Retrieves the string that describes the file's type. The
string is copied to the szTypeName member of the structure specified by
psfi.
SHGFI_USEFILEATTRIBUTES Indicates that the function should use the
dwFileAttributes parameter.
To retrieve the executable file type, uFlags must specify only
SHGFI_EXETYPE. The return value specifies the type of the executable file:
0 Nonexecutable file or an error condition.
LOWORD = NE or PE
HIWORD = 3.0, 3.5, or 4.0 Windows application
LOWORD = MZ
HIWORD = 0 MS-DOS .EXE, .COM or .BAT file
LOWORD = PE
HIWORD = 0 Win32 console application
Return Values
· Returns a value whose meaning depends on the uFlags parameter. If uFlags
specifies the SHGFI_EXETYPE value, the return value indicates the type of
the executable file. For more information, see the comments below.
· If uFlags includes the SHGFI_ICON or SHGFI_SYSICONINDEX value, the return
value is the handle of the system image list that contains the large icon
images. If the SHGFI_SMALLICON value is also included, the return value is
the handle of the image list that contains the small icon images.
· If uFlags does not include SHGFI_EXETYPE, SHGFI_ICON, SHGFI_SYSICONINDEX,
or SHGFI_SMALLICON, the return value is nonzero the function succeeds, or
zero otherwise.
Ciao Livio