xygorn
February 17th, 2003, 11:14 AM
Hello,
I am looking for a fast way to create a data structure to hold a directory tree and information on files in the directory tree. As the filesystem that is being loaded into the data structure is large, speed is a significant issue.
I am aware of three possible techniques to get the information I need. Two of these are from WINAPI:
FindFirstFile and FindNextFile
and
GetFileInformationByHandle
The third option is using c++ library calls:
_findfirsti64 and _findnexti64
The data structure is being used in an Activex Control embedded in a Visual Basic program to offload the building of the stucture and querying the structure to C++.
Is it common knowledge which of these is a faster general solution? Are different solutions faster in different scenarios (OS,File system,RAM amount)? Are there other factors that I should be aware of when selecting one of these options? Is there a fourth solution that would be better than any of these? (Note: I do need all of the pieces of information provided by these functions)
Thank you for your help,
Eli Gibson
I am looking for a fast way to create a data structure to hold a directory tree and information on files in the directory tree. As the filesystem that is being loaded into the data structure is large, speed is a significant issue.
I am aware of three possible techniques to get the information I need. Two of these are from WINAPI:
FindFirstFile and FindNextFile
and
GetFileInformationByHandle
The third option is using c++ library calls:
_findfirsti64 and _findnexti64
The data structure is being used in an Activex Control embedded in a Visual Basic program to offload the building of the stucture and querying the structure to C++.
Is it common knowledge which of these is a faster general solution? Are different solutions faster in different scenarios (OS,File system,RAM amount)? Are there other factors that I should be aware of when selecting one of these options? Is there a fourth solution that would be better than any of these? (Note: I do need all of the pieces of information provided by these functions)
Thank you for your help,
Eli Gibson