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


Anmelden zum Antworten