删除文件时,它在其他进程中使用

本文关键字:进程 其他 文件 删除 | 更新日期: 2023-09-27 17:50:41

在WPF中的DocumentViewerControl中,我想在关闭事件处理程序中的控件后删除文件。我试图删除它,但VS告诉我它被另一个进程使用。我如何删除它?

TextBlock tb = (TextBlock)e.TabItem.Header;
int index = Convert.ToInt32(tb.Text.Split(' ')[1]) - 2;
string path = GlobalStaticVariables.store_item_content[index].Split('-')[1];
Process temp = Process.GetCurrentProcess();
temp.Dispose();
System.IO.File.Delete(path);

删除文件时,它在其他进程中使用

这个问题被问了很多次,答案仍然没有改变:删除其他进程打开的文件是不好的,因此很难做到。通常最好弄清楚文件被锁定的原因,然后修复应用程序行为以避免广泛的文件锁定,或者等到应用程序释放文件。

要调查谁锁定了文件,您可以使用Handle或GUI版本- Process Explorer by Microsoft/SysInternals。

请参阅本主题讨论的相关消息。