私はFindFirstFileと次の最初のFindNextFileについて知りたいと思います。 FindFirstFileが常に '。' (現在のフォルダ)と次のFindNextFileは常に '..'(親フォルダ)ですか?もちろんマスクは「*」です。私は、ファイルのリストを少しスピードをアップしたい、私は同じように、何かを書くことができます:「」だから私はチェックの必要はありませんFindFirstFile-FindNextFileでこのトリックでファイル検索を高速化しますか?
h := FindFirstFile('path\*' ...) // it finds '.', not process
if h = INVALID_HANDLE_VALUE then ... // some error handling, of course
FindNextFile(...) // skipping '..', I suppose, if '.' has found,
// '..' will be too, no handle validity check
while FindNextFile(...) do
// file/folder processing begins here
と '..'のファイル名が毎回あります。文法には申し訳ありませんが、わたしは理解できました、そして私の英語のために、私が間違いを犯すならば。
それは無意味であり、測定可能な方法でそれをスピードアップせず、単に難読化するだけです。注文を保証するものは何も見つかりません。要するに、これを行うことに賛成するとは言えないことはまったくありません。 –
@DavidHeffernan "path"が "C:"の場合、2つの完全に良いディレクトリエントリを破棄しただけです。 –
ディレクトリ内のファイルの列挙を高速化する唯一の本当の方法は、[MFT](https://en.wikipedia.org/wiki/NTFS#Internals)に直接アクセスすることです。しかし、物事はそこに複雑になる、私は気にしないだろう。 – IInspectable