如何刪除目錄中的另一個進程可能正在使用的圖像文件(ex * .gif)?刪除目錄中的圖像文件(可能會被其他進程使用)
1
A
回答
1
當另一個進程正在使用它時,您不能刪除它。這來自Windows的低級文件處理。不過,您可以重新命名文件或將其設置爲在下次啓動時刪除。
Process Explorer工具可以幫助您找到哪個進程正在使用該文件,並且實際上可以關閉句柄 - 給予正確/管理權限。所以可以使用API調用,但是強制關閉文件句柄可能會導致該過程出現不可預知的行爲。
0
如果你不能刪除它,你可能可以重命名它,但我不確定爲什麼一些鎖定的文件可以重命名,而其他的則不能。
您還可以安排它在下次啓動時使用MoveFileEx用空目的地和MOVEFILE_DELAY_UNTIL_REBOOT標誌被刪除:
http://msdn.microsoft.com/en-us/library/aa365240(VS.85).aspx
http://www.pinvoke.net/default.aspx/kernel32/MoveFileEx.html
http://www.pinvoke.net/default.aspx/Enums/MoveFileFlags.html
0
如果使用My.Computer.FileSystem.DeleteFile,如果另一個程序正在使用該文件,則可以通知用戶程序將該文件鎖定。如果正在使用它不能被刪除。
Try
My.Computer.FileSystem.DeleteFile("C:\Documents and Settings\anybody\Desktop\dummy.doc", _
FileIO.UIOption.AllDialogs, _
FileIO.RecycleOption.DeletePermanently, _
FileIO.UICancelOption.ThrowException)
Catch ex As System.IO.IOException
Console.WriteLine(ex.ToString())
End Try
相關問題
- 1. 刪除文件強制即使它正在被其他進程
- 2. 文件正在被其他進程使用,同時刪除文件
- 3. 如何刪除其他進程使用的文件
- 4. 如何刪除從其他目錄複製的目錄中的文件?
- 5. c#文件移動(文件已被其他進程使用)
- 6. 刪除其他進程使用的文件並獲取其信息
- 7. 在應用程序文檔目錄中刪除圖像
- 8. 無法刪除服務器上的圖像文件,但其他文件可以
- 9. BAT文件能夠刪除一些文件,但不能刪除其他文件
- 10. 無法訪問已被其他進程使用的文件
- 11. 從iPhone中的應用程序目錄中刪除圖像
- 12. 由python複製的文件不能被其他進程訪問
- 13. 無法刪除文件夾,因爲它正在被其他進程使用(我的應用程序)
- 14. 我可以使用代碼從目錄中刪除文件,但不能刪除它的inode文件?
- 15. 使用ProGuard刪除記錄不會被刪除記錄
- 16. 僅在Linux中的文件未被其他進程使用時移動文件
- 17. Drupal不會允許我或其他用戶刪除圖像
- 18. 使用find來刪除所有的子目錄(及其文件)
- 19. 文件被刪除後,fread可能嗎?
- 20. Makefile文件試圖從其他目錄
- 21. 從asp.net項目中刪除未使用的文件/圖像
- 22. 刪除其他用戶的文件
- 23. 確定該文件沒有被任何其他進程使用
- 24. 寫入文件時出錯 - 它被其他進程使用
- 25. 如何確定文件是否被其他進程使用?
- 26. 文件正在被其他進程使用
- 27. 刪除XAML使用的圖像文件
- 28. 從目錄中刪除圖像,並從目錄中刪除它們的鏈接
- 29. C#不能訪問該文件,因爲它被其他進程
- 30. 如何通知其他進程文件已標記爲刪除?