Newsgroup: it.comp.programmare.win32
Titolo: Gestione Wildcards

Ciao a tutti,
volevo chiedervi informazioni sulla gestione delle Wildcards.
Infatti, devo ricercare ricorsivamente alcuni tipi di file, esattamente
come fa il "CercaFile" di Windows, solo che una volta che ho
riconosciuto che il file ha una certa estensione, ad esempio: ".txt",
vorrei vedere se il nome del file contiene una certa sottostringa. Ora,
il mio problema nasce dal fatto che mi piacerebbe che questa
sottostringa possa contenere dei caratteri jolly, del tipo: "abc*" per
ricercare tutti quei file che hanno estensione .txt ed il cui nome
comincia anche per "abc".
Esiste un meccanismo automatico che gestisca già questi caratteri jolly?
Ho provato con la Find delle CString ma non gestisce questi caratteri
particolari.
Eppure, dovrebbe esserci qualcosa, o no?
Grazie, Paolo
-- 
Posted from root@[212.69.128.10] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

The FindFirstFile function searches a directory for a file whose name
matches the specified filename. FindFirstFile examines subdirectory
names as well as filenames. 
HANDLE FindFirstFile(
    LPCTSTR lpFileName,	// pointer to name of file to search for  
    LPWIN32_FIND_DATA lpFindFileData 	// pointer to returned
information 
   );	
 
Parameters
lpFileName
Windows 95: Points to a null-terminated string that specifies a valid
directory or path and filename, which can contain wildcard characters
(* and ?). This string must not exceed MAX_PATH characters.
Windows NT: Points to a null-terminated string that specifies a valid
directory or path and filename, which can contain wildcard characters
(* and ?). 
There is a default string size limit for paths of MAX_PATH characters.
This limit is related to how the FindFirstFile function parses paths.
An application can transcend this limit and send in paths longer than
MAX_PATH characters by calling the wide (W) version of FindFirstFile
and prepending "\\?\" to the path. The "\\?\" tells the function to
turn off path parsing; it lets paths longer than MAX_PATH be used with
FindFirstFileW. This also works with UNC names. The "\\?\
" is ignored as part of the path. For example,
"\\?\C:\myworld\private" is seen as "C:\myworld\private", and
"\\?\UNC\bill_g_1\hotstuff\coolapps" is seen as
"\\bill_g_1\hotstuff\coolapps".
lpFindFileData
Points to the WIN32_FIND_DATA structure that receives information
about the found file or subdirectory. The structure can be used in
subsequent calls to the FindNextFile or FindClose function to refer to
the file or subdirectory. 
 
Return Values
If the function succeeds, the return value is a search handle used in
a subsequent call to FindNextFile or FindClose.
If the function fails, the return value is INVALID_HANDLE_VALUE. To
get extended error information, call GetLastError. 
Remarks
The FindFirstFile function opens a search handle and returns
information about the first file whose name matches the specified
pattern. Once the search handle is established, you can use the
FindNextFile function to search for other files that match the same
pattern. When the search handle is no longer needed, close it by using
the FindClose function. 
This function searches for files by name only; it cannot be used for
attribute-based searches. 
See Also
FindClose, FindNextFile, GetFileAttributes, SetFileAttributes,
WIN32_FIND_DATA 
