Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das Festlegen des Zeitstempels für eine Datei mit dem schreibgeschützten Attribut ist jetzt unter Windows erfolgreich und löst keine Ausnahme mehr aus.
Altes Verhalten
In Versionen vor dem .NET 6-Wartungsrelease hat das Festlegen des Zeitstempels für eine schreibgeschützte Datei unter Windows zu einer UnauthorizedAccessException geführt.
Neues Verhalten
Ab .NET 6.0.2 ist das Festlegen des Zeitstempels für eine schreibgeschützte Datei unter Windows erfolgreich.
Eingeführte Version
.NET 6.0.2 (Wartungsfreigabe)
Art der einschneidenden Änderung
Diese Änderung kann sich auf die Binäre Kompatibilität auswirken.
Grund für Änderung
In ihrem Feedback haben Kunden berichtet, dass sie erwartet haben, erfolgreich einen Zeitstempel für eine schreibgeschützte Datei festlegen zu können. Diese Änderung macht auch das Windows-Verhalten konsistent mit Linux. Schließlich war das Verhalten unbeabsichtigt, verursacht durch einen Fehler.
Empfohlene Aktion
Es ist unwahrscheinlich, dass vorhandener Code erwartet, dass das Festlegen des Zeitstempels für eine schreibgeschützte Datei fehlschlägt. Wenn dieses Verhalten jedoch in Ihrem Code erwartet wird, fügen Sie mithilfe von File.GetAttributes(String) eine Überprüfung zu Ihrem Nur-Lese-Attribut hinzu, bevor Sie versuchen, den Zeitstempel festzulegen.
Betroffene APIs
- System.IO.File.SetCreationTime(String, DateTime)
- System.IO.File.SetCreationTimeUtc(String, DateTime)
- System.IO.File.SetLastAccessTime(String, DateTime)
- System.IO.File.SetLastAccessTimeUtc(String, DateTime)
- System.IO.File.SetLastWriteTime(String, DateTime)
- System.IO.File.SetLastWriteTimeUtc(String, DateTime)