Erstelldatum einer Datei auslessen
-
Hi ich möchte ein Erstelldatum von dateien auslessen wie macht man das. Ich benutze findeFirst... um die Dateien auszulessen. ich wieß auch wie ich an das Änderdartum bekomme aber nicht das Erstelldatum???
Wie mach ich das????vielen Dank im Voruas
Andreas Werner
-
Hallo,
Hier kann dir GetFileTime helfen.
-
Anbei noch ein Anwendungsbeispiel.
bool GetFileTimes(vector<TDateTime>& timevect, const AnsiString &FileName) { vector<FILETIME> ftime(3); HANDLE hFile = CreateFile(TEXT(FileName.c_str()), // file to open GENERIC_READ, // open for reading FILE_SHARE_READ, // share for reading NULL, // default security OPEN_EXISTING, // existing file only FILE_ATTRIBUTE_NORMAL, // normal file NULL); // no attr. template if (hFile == INVALID_HANDLE_VALUE) return false; GetFileTime(hFile, &ftime[0], &ftime[1], &ftime[2]); CloseHandle(hFile); SYSTEMTIME stime; timevect.clear(); // Creation time if( !FileTimeToSystemTime(&ftime[0], &stime)) return false; timevect.push_back(TDateTime(stime.wYear, stime.wMonth, stime.wDay)); // last access time if( !FileTimeToSystemTime(&ftime[1], &stime)) return false; timevect.push_back(TDateTime(stime.wYear, stime.wMonth, stime.wDay)); // last write time if( !FileTimeToSystemTime(&ftime[2], &stime)) return false; timevect.push_back(TDateTime(stime.wYear, stime.wMonth, stime.wDay)); return true; } //---------------------------------------------------------------------------
-
Hallo
Wenn du mit FindFirstFile arbeitest : dann brauchst keine extra Funktion aufrufen. Die Struktur WIN32_FIND_DATAA des Suchergebnisses hat bereits einen Member für die Zeitangaben.
Und bei den VCL-Funktionen FindFirst hat die Struktur TSearchRec auch einen Member, der auf die zugrundeliegende WIN32_FIND_DATAA-Struktur verweist.bis bald
akari