CFileFind::MatchesMask
更新 : 2007 年 11 月
検索したファイルのファイル属性を調べます。
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 を呼び出す前に、少なくとも 1 回は 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