У меня есть небольшой скрипт vb.net, который копирует файл, устанавливает его атрибуты на Normal, обновляет время файла, а затем устанавливает обратно атрибуты, соответствующие атрибутам исходного файла.
If IO.File.Exists(Destination) Then IO.File.SetAttributes(Destination, IO.FileAttributes.Normal)
IO.File.Copy(Source, Destination, True)
IO.File.SetAttributes(Destination, IO.FileAttributes.Normal)
IO.File.SetLastWriteTimeUtc(Destination, IO.File.GetLastWriteTimeUtc(Destination).AddHours(1))
IO.File.SetAttributes(Destination, IO.File.GetAttributes(Source))
Однако я столкнулся с довольно странной проблемой. В некоторых конфигурациях IO.File.SetLastWriteTimeUtc
вызывает ошибку UnauthorizedAccess, хотя инструкция IO.File.Copy
работала очень хорошо.
Я полностью озадачен: я проверил, и атрибуты файла успешно установлены в 128 (т. Е. Нормальные). Проблема, похоже, с самой SetLastWriteTimeUtc
. Но что это?
Есть идеи?
Большое спасибо!