共用方式為


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。 若要擴充錯誤訊息,請改為呼叫 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());
   }
}

需求

Header: afx.h

請參閱

參考

CFileFind 類別

階層架構圖表

CFileFind::IsDots

CFileFind::IsReadOnly

CFileFind::IsDirectory

CFileFind::IsCompressed

CFileFind::IsSystem

CFileFind::IsHidden

CFileFind::IsTemporary

CFileFind::IsNormal

CFileFind::IsArchived