#include "atlpath.h"
BOOL GetFileList(CString path,CStringArray* outArray)
{
// ファイル検索を開始します。
CFileFind fileFind;
BOOL bResult = fileFind.FindFile(path);
// ファイル検索ができない場合、終了します。
if (!bResult) return FALSE;
// ファイルが検索できる間繰り返します。
do
{
// ファイルを検索します。
// 次のファイル・ディレクトリがない場合、FALSEが返却されます。
bResult = fileFind.FindNextFile();
// "."または".."の場合、次を検索します。
if (fileFind.IsDots()) continue;
// 検索した結果がディレクトリの場合
CString msg;
CString filePath = fileFind.GetFilePath();
if (fileFind.IsDirectory() && bsaiki )
{
// サブディレクトリを検索する場合、再帰呼出しします。
CPath subDir = filePath;
// ディレクトリ内のすべてのファイル・ディレクトリを対象とするため
// ワイルドカード"*"を指定します。
subDir.Append(_T("*"));
GetFileList(subDir, outArray);
}
// ファイルの場合
else
{
outArray->Add(filePath);
}
} while (bResult);
return TRUE;
}