我有一个小的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
非常相似。但它是什么?
任何想法?
非常感谢!
答案 0 :(得分:0)
如果您使用的是Vista或Windows 7,则需要将其作为管理员运行,因为UAC。尝试升高运行它并且它可以很好地运行