WIN32_FIND_DATAA 構造体 (minwinbase.h)
FindFirstFile、FindFirstFileEx、または FindNextFile 関数で検出されたファイルに関する情報が含まれます。
構文
typedef struct _WIN32_FIND_DATAA {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
CHAR cFileName[MAX_PATH];
CHAR cAlternateFileName[14];
DWORD dwFileType; // Obsolete. Do not use.
DWORD dwCreatorType; // Obsolete. Do not use
WORD wFinderFlags; // Obsolete. Do not use
} WIN32_FIND_DATAA, *PWIN32_FIND_DATAA, *LPWIN32_FIND_DATAA;
メンバー
dwFileAttributes
ファイルのファイル属性。
使用できる値とその説明については、「 ファイル属性定数」を参照してください。
ファイル のFILE_ATTRIBUTE_SPARSE_FILE 属性は、ファイルのいずれかのストリームがスパースであった場合に設定されます。
ftCreationTime
ファイルまたはディレクトリが作成された日時を指定する FILETIME 構造体。
基になるファイル システムが作成時間をサポートしていない場合、このメンバーは 0 です。
ftLastAccessTime
FILETIME 構造体。
ファイルの場合、 構造体は、ファイルの最終読み取り、書き込み先、または実行可能ファイルの実行日時を指定します。
ディレクトリの場合、 構造体は、ディレクトリを作成するタイミングを指定します。 基になるファイル システムが最終アクセス時刻をサポートしていない場合、このメンバーは 0 です。
FAT ファイル システムでは、ファイルとディレクトリの両方に指定された日付が正しいですが、時刻は常に午前 0 時に設定されます。
ftLastWriteTime
FILETIME 構造体。
ファイルの場合、構造体は、ファイルが最後に書き込まれた、切り捨てられた、または上書きされた日時 ( たとえば、WriteFile または SetEndOfFile を使用する場合) を指定します。 ファイル属性またはセキュリティ記述子が変更された場合、日付と時刻は更新されません。
ディレクトリの場合、 構造体は、ディレクトリを作成するタイミングを指定します。 基になるファイル システムで前回の書き込み時刻がサポートされていない場合、このメンバーは 0 になります。
nFileSizeHigh
ファイル サイズの上位 DWORD 値 (バイト単位)。
ファイル サイズが MAXDWORD より大きい場合を除き、この値は 0 です。
ファイルのサイズは、(nFileSizeHigh * (MAXDWORD+1)) + nFileSizeLow と等しくなります。
nFileSizeLow
ファイル サイズの下位 DWORD 値 (バイト単位)。
dwReserved0
dwFileAttributes メンバーに FILE_ATTRIBUTE_REPARSE_POINT 属性が含まれている場合、このメンバーは再解析ポイント タグを指定します。
それ以外の場合、この値は未定義であり、使用しないでください。
詳細については、「 ポイント タグの再解析」を参照してください。
IO_REPARSE_TAG_CSV (0x80000009)
IO_REPARSE_TAG_DEDUP (0x80000013)
IO_REPARSE_TAG_DFS (0x8000000A)
IO_REPARSE_TAG_DFSR (0x80000012)
IO_REPARSE_TAG_HSM (0xC0000004)
IO_REPARSE_TAG_HSM2 (0x80000006)
IO_REPARSE_TAG_MOUNT_POINT (0xA0000003)
IO_REPARSE_TAG_NFS (0x80000014)
IO_REPARSE_TAG_SIS (0x80000007)
IO_REPARSE_TAG_SYMLINK (0xA000000C)
IO_REPARSE_TAG_WIM (0x80000008)
dwReserved1
将来利用するために予約されています。
cFileName[MAX_PATH]
ファイルの名前です。
cAlternateFileName[14]
ファイルの代替名。
この名前は、従来の 8.3 ファイル名形式です。
注釈
ファイルに長いファイル名がある場合は、完全な名前が cFileName メンバーに表示され、名前の 8.3 形式の切り捨てられたバージョンが cAlternateFileName メンバーに表示されます。 それ以外の場合、 cAlternateFileName は空です。 fInfoLevelId パラメーターの FindExInfoBasic の値を使用して FindFirstFileEx 関数が呼び出された場合、cAlternateFileName メンバーには常に NULL 文字列値が含まれます。 これは、 FindNextFile 関数に対する後続のすべての呼び出しに当てはまります。 ファイル名の 8.3 形式バージョンを取得する別の方法として、 GetShortPathName 関数を使用できます。 ファイル名の詳細については、「 ファイル名、パス、および名前空間」を参照してください。
作成および最終アクセスの日時は、すべてのファイル システムが記録するわけではなく、すべてのファイル システムがそれらを同じ方法で記録するとは限りません。 たとえば、FAT ファイル システムでは、作成時間の解像度は 10 ミリ秒、書き込み時間の解像度は 2 秒、アクセス時間の解像度は 1 日です。 NTFS ファイル システムは、ファイルの最終アクセス時刻に対する更新を、最後のアクセスから最大 1 時間遅延します。 詳細については、「ファイル時間」を参照してください。
注意
minwinbase.h ヘッダーは、unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとしてWIN32_FIND_DATAを定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
Header | minwinbase.h (Windows.h を含む) |