SetFileTime-Funktion (fileapi.h)

Legt das Datum und die Uhrzeit der Erstellung einer angegebenen Datei oder eines angegebenen Verzeichnisses, des letzten Zugriffs darauf oder der letzten Änderung fest.

Syntax

BOOL SetFileTime(
  [in]           HANDLE         hFile,
  [in, optional] const FILETIME *lpCreationTime,
  [in, optional] const FILETIME *lpLastAccessTime,
  [in, optional] const FILETIME *lpLastWriteTime
);

Parameter

[in] hFile

Ein Handle für die Datei oder das Verzeichnis. Das Handle muss mit der CreateFile-Funktion mit dem Zugriffsrecht FILE_WRITE_ATTRIBUTES erstellt worden sein. Weitere Informationen finden Sie unter Dateisicherheit und Zugriffsrechte.

[in, optional] lpCreationTime

Ein Zeiger auf eine FILETIME-Struktur , die das neue Erstellungsdatum und die neue Erstellungszeit für die Datei oder das Verzeichnis enthält. Wenn die Anwendung diese Informationen nicht ändern muss, legen Sie diesen Parameter entweder auf NULL oder auf einen Zeiger auf eine FILETIME-Struktur fest, in der die Elemente dwLowDateTime und dwHighDateTime auf 0festgelegt sind.

[in, optional] lpLastAccessTime

Ein Zeiger auf eine FILETIME-Struktur , die das neue Datum und die Uhrzeit des letzten Zugriffs für die Datei oder das Verzeichnis enthält. Der Zeitpunkt des letzten Zugriffs umfasst den Zeitpunkt, zu dem die Datei oder das Verzeichnis zuletzt geschrieben, aus gelesen oder (im Fall ausführbarer Dateien) ausgeführt wurde. Wenn die Anwendung diese Informationen nicht ändern muss, legen Sie diesen Parameter entweder auf NULL oder auf einen Zeiger auf eine FILETIME-Struktur fest, in der die Elemente dwLowDateTime und dwHighDateTime auf 0festgelegt sind.

Um zu verhindern, dass Dateivorgänge mit dem angegebenen Handle die letzte Zugriffszeit ändern, rufen Sie SetFileTime unmittelbar nach dem Öffnen des Dateihandles auf, und übergeben Sie eine FILETIME-Struktur , in der die Elemente dwLowDateTime und dwHighDateTime auf 0xFFFFFFFFfestgelegt sind.

[in, optional] lpLastWriteTime

Ein Zeiger auf eine FILETIME-Struktur , die das neue Datum und die Uhrzeit der letzten Änderung für die Datei oder das Verzeichnis enthält. Wenn die Anwendung diese Informationen nicht ändern muss, legen Sie diesen Parameter entweder auf NULL oder auf einen Zeiger auf eine FILETIME-Struktur fest, in der die Elemente dwLowDateTime und dwHighDateTime auf 0festgelegt sind.

Um zu verhindern, dass Dateivorgänge mit dem angegebenen Handle die letzte Schreibzeit ändern, rufen Sie SetFileTime unmittelbar nach dem Öffnen des Dateihandles auf, und übergeben Sie eine FILETIME-Struktur , in der die Elemente dwLowDateTime und dwHighDateTime auf 0xFFFFFFFFfestgelegt sind.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Nicht alle Dateisysteme können erstellungs- und letzte Zugriffszeiten aufzeichnen, und nicht alle Dateisysteme erfassen sie auf die gleiche Weise. Beispielsweise hat die Erstellungszeit in FAT eine Auflösung von 10 Millisekunden, die Schreibzeit eine Auflösung von 2 Sekunden und die Zugriffszeit eine Auflösung von 1 Tag (eigentlich das Zugriffsdatum). Daher gibt die GetFileTime-Funktion möglicherweise nicht die gleichen Dateizeitinformationen zurück, die mithilfe von SetFileTime festgelegt wurden. NTFS verzögert Updates auf den letzten Zugriffszeitpunkt für eine Datei um bis zu einer Stunde nach dem letzten Zugriff.

Beispiele

Ein Beispiel finden Sie unter Ändern einer Dateizeit in die aktuelle Zeit.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile fileapi.h (Einschließen von Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

FILETIME

Dateizeiten

GetFileSize

GetFileTime

GetFileType

SetFileInformationByHandle

Zeitfunktionen