當您嘗試在Windows資源管理器中刪除文件,並且該文件正在使用時,它會彈出一個對話框,提示文件正在使用並且它會繼續爲您提供打開文件的文件名。如何找出什麼在Windows中打開了EXE
例如,
Example http://img28.imageshack.us/img28/7618/c3b3e2f53833461b9c8c2a3.png
我見過涉及內核驅動程序的黑客,但如果Windows資源管理器可以做到這一點,那麼就必須有一個更簡單的方法。
什麼是獲取此信息的最佳和最簡單的方法?
當您嘗試在Windows資源管理器中刪除文件,並且該文件正在使用時,它會彈出一個對話框,提示文件正在使用並且它會繼續爲您提供打開文件的文件名。如何找出什麼在Windows中打開了EXE
例如,
Example http://img28.imageshack.us/img28/7618/c3b3e2f53833461b9c8c2a3.png
我見過涉及內核驅動程序的黑客,但如果Windows資源管理器可以做到這一點,那麼就必須有一個更簡單的方法。
什麼是獲取此信息的最佳和最簡單的方法?
從Windows Vista開始,你可以使用IFileIsInUse
接口,如果你想支持舊版本的Windows,你可以使用NtQuerySystemInformation,NtQueryInformationFile和NtQueryObject WINAPI功能,有關此主題的更多資料請查看我的這個question答案。
完美。 IFileIsInUse就是我一直在尋找的東西。謝謝。 – AlexPi
Process Explorer –
相關:http://stackoverflow.com/questions/1990535/win32-files-locked-for-reading-how-to-find-out-whos-locking-them –
使用重新啓動管理器。 [示例代碼](http://blogs.msdn.com/b/oldnewthing/archive/2012/02/17/10268840.aspx)。 –