Festlegen des Zeitstempels für schreibgeschützte Dateien auf Windows

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.

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