想象一个 winform 应用程序,它将更新的程序集从源文件夹 A 复制到目标文件夹 B。我使用简单的 DirectoryInfo.GetFiles 方法填充列表视图,比较文件夹 A 和 B 中的程序集版本;如果某些程序集较新,我将开始我的更新方法。在这种方法中,在复制之前,我会尝试 B 文件夹中的所有文件是否都未使用:
var B = new DirectoryInfo("myBfolder");
foreach (var file in aFolder.GetFiles())
{
try
{
//File not in use
File.Open(file.FullName, FileMode.Open, FileAccess.ReadWrite, FileShare.None);
}
catch (Exception ex)
{
//File in use!
}
}
好吧,由于以前的 UpdateListView 代码使用 FileInfo 来获取要显示的信息,因此我的所有文件都在使用中!
FileInfo 锁定文件!这可能吗?
有人可以建议绕过这个问题的方法吗?
谢谢你,南多