CFileFind::MatchesMask
見つかったファイルのファイル属性をテストするには、このメンバー関数を呼び出します。
virtual BOOL MatchesMask(
DWORD dwMask
) const;
パラメーター
dwMask
指定された検索されたファイルに対して WIN32_FIND_DATA の構造に一つ以上のファイル属性を指定します。複数の属性を検索するには、ビットごとの OR (使用します。|演算子)。次の属性の組み合わせでも、許容範囲内です:FILE_ATTRIBUTE_ARCHIVE ファイルはアーカイブ ファイルです。アプリケーションは、ファイルにバックアップまたは削除のマークを付けるために、この属性を使います。
FILE_ATTRIBUTE_COMPRESSED は、ファイルまたはディレクトリ圧縮されます。ファイルの場合は、ファイル内のすべてのデータを圧縮することを意味します。ディレクトリの場合、これは圧縮が新しく作成されたファイルとサブディレクトリの既定値であることを意味します。
FILE_ATTRIBUTE_DIRECTORY は、ファイル ディレクトリです。
FILE_ATTRIBUTE_NORMAL ファイルに他の属性は設定されていません。この属性は、単独で使用された場合だけ有効です。他のすべてのファイル属性にこの属性をオーバーライドします。
FILE_ATTRIBUTE_HIDDEN ファイルは非表示になります。通常は、のディレクトリの一覧ではありません。
FILE_ATTRIBUTE_READONLY ファイルは読み取り専用です。アプリケーションがファイルを読み取ることができます。ファイルに書き込むか、削除できません。
FILE_ATTRIBUTE_SYSTEM ファイルが含まれており、オペレーティング システムによってのみ使用されます。
FILE_ATTRIBUTE_TEMPORARY は、一時的なストレージのファイルが使用されます。アプリケーションは、ファイルへの絶対に必要な場合にのみ作成する必要があります。ファイルのデータのほとんどはメモリにメディア ファイルへ洗い流されないのままですがすぐに削除されるため。
戻り値
正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。エラー情報を拡張するには、Win32 関数 GetLastErrorを呼び出します。
解説
MatchesMaskを呼び出す前に FindNextFile を少なくとも一度呼び出す必要があります。
使用例
// This code fragment shows all of the files in the root directory
// of drive C: which have either the hidden attribute or the system
// attribute, or both.
CFileFind finder;
BOOL bWorking = finder.FindFile(_T("C:\\*.*"));
while (bWorking)
{
bWorking = finder.FindNextFile();
if (finder.MatchesMask(FILE_ATTRIBUTE_HIDDEN |
FILE_ATTRIBUTE_SYSTEM))
{
_tprintf_s(_T("%s\n"), (LPCTSTR) finder.GetFileName());
}
}
必要条件
ヘッダー : afx.h