在这个过程中文件是打开的?

时间:2012-04-11 22:16:58

标签: c++ windows locked-files

我有一个为Windows平台维护的应用程序套件。我最近在共享库中添加了一些代码,以便在应用程序完成后删除目录。在一个应用程序中,删除成功;另一方面,我收到一条消息,告诉我该文件正由另一个进程使用。

下载Process Explorer后,我了解了我的预期,持有该文件夹的进程是试图删除它的进程。

当我谷歌寻求答案时,我所看到的是,“你需要下载XYZ以找出保存文件的进程,然后关闭该进程,”其中“XYZ”是Unlocker,Process Explorer等.I知道保存文件的进程,但如果我终止它,它怎么能删除文件夹?

有没有人知道如何找到保持文件夹打开的代码?在可用于查找哪些进程正在使用哪些文件的工具中,是否可以使用任何工具查找文件夹打开过程中的位置?

1 个答案:

答案 0 :(得分:1)

过程中没有“"”位置的概念"文件打开的位置。例如。一个非常常见的无意打开文件的原因是泄漏句柄。这意味着该文件正好打开,因为在该过程中没有文件句柄的位置。