treeScannerC/doc/winapi_notes.md
Adam Skotarczak 4a9b5e77f3
v1.0.0
- C-Template für CLI Tools
2025-05-09 22:46:31 +02:00

1.7 KiB
Raw Blame History

WIN32_FIND_DATA Strukturreferenz (Windows API)

Diese Struktur wird verwendet, um Dateiinformationen aus FindFirstFile und FindNextFile zu lesen.

Definition (verkürzt)

typedef struct _WIN32_FIND_DATA {
    DWORD dwFileAttributes;
    FILETIME ftCreationTime;
    FILETIME ftLastAccessTime;
    FILETIME ftLastWriteTime;
    DWORD nFileSizeHigh;
    DWORD nFileSizeLow;
    TCHAR cFileName[MAX_PATH];
    TCHAR cAlternateFileName[14];
} WIN32_FIND_DATA;

Wichtige Felder

Feld Typ Beschreibung
dwFileAttributes DWORD Dateiattribute, z.B. FILE_ATTRIBUTE_DIRECTORY
ftCreationTime FILETIME Erstellungszeit
ftLastWriteTime FILETIME Letzte Änderung
nFileSizeHigh DWORD Dateigröße (oberer 32-Bit-Wert)
nFileSizeLow DWORD Dateigröße (unterer 32-Bit-Wert)
cFileName TCHAR[] Vollständiger Dateiname
cAlternateFileName TCHAR[] 8.3-Dateiname (DOS-kompatibel)

Beispiel

WIN32_FIND_DATA find_data;
HANDLE hFind = FindFirstFile("C:\Beispiel\*", &find_data);

if (find_data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
    printf("📁 %s\n", find_data.cFileName);
} else {
    printf("📄 %s\n", find_data.cFileName);
}

Weitere Hinweise

  • Wird ausschließlich unter Windows verwendet
  • Maximaler Pfad ist MAX_PATH (260 Zeichen)
  • Unicode-Unterstützung über FindFirstFileW möglich (für WCHAR statt TCHAR)