如何关闭另一个进程以释放文件锁定

本文关键字:文件 文件锁 锁定 释放 何关闭 另一个 进程 | 更新日期: 2023-09-27 18:34:08

我创建了一个按钮。在按钮的事件处理程序中,我想删除文件夹 (abc) 中的所有文件。

这是此代码:

    private void button1_Click_1(object sender, EventArgs e)
    {
        MessageBox.Show("Are you sure!!!! The files in the folder will be deleted permanently");
        this.Close();
        string[] filePaths = Directory.GetFiles(@"C:'abc'");
        foreach (string filePath in filePaths)
            File.Delete(filePath);
    }

例如,文件夹中有一个Word文件,如果打开它,我会收到一条错误消息:

进程无法访问文件"C:''abc''New Microsoft Word 文档.docx",因为它正被另一个进程使用。

如何关闭另一个进程以释放文件锁定

您可以使用Process类来查找该进程,强制关闭该程序,然后删除该文件。像这样的东西...

Process [] proc Process.GetProcessesByName("winword");
proc[0].Kill();

但是,我不建议这样做,因为Windows也不会删除打开的文件。