Wie kann ich Bilddateien (ex * .gif) löschen, die möglicherweise von einem anderen Prozess in einem Verzeichnis verwendet werden?Löschen von Bilddateien in einem Verzeichnis (möglicherweise von einem anderen Prozess verwendet)
Antwort
Sie können nicht gelöscht werden, während ein anderer Prozess es verwendet wird. Dies kommt von Low-Level-Dateihandling von Windows. Sie können jedoch damit umgehen, dass Sie die Datei umbenennen oder sie beim nächsten Start löschen lassen.
Process Explorer Tool kann Ihnen helfen, zu finden, welcher Prozess die Datei verwendet, und es kann den Handle tatsächlich schließen - richtige/administrative Rechte gegeben. So ist es mit API-Aufrufen möglich, aber ein solches erzwungenes Schließen der Dateikennung kann zu einem unvorhersehbaren Verhalten dieses Prozesses führen.
Wenn Sie es nicht löschen können, können Sie es möglicherweise umbenennen, aber ich bin mir nicht sicher, warum einige gesperrte Dateien umbenannt werden können, während andere nicht können.
Sie können auch planen beim nächsten Systemstart mit MoveFileEx mit einem Null-Ziel und der MOVEFILE_DELAY_UNTIL_REBOOT Flag gelöscht werden:
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
Wenn Sie My.Computer.FileSystem.DeleteFile verwenden, Sie können den Benutzer darüber informieren, welches Programm die Datei gesperrt hat, wenn ein anderes Programm die Datei verwendet. Es kann nicht gelöscht werden, wenn es verwendet wird.
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. Löschen JPEG nicht zulässig (von einem anderen Prozess verwendet)
- 2. Datei wird von einem anderen Prozess verwendet
- 3. Datei wird von einem anderen Prozess verwendet C# Visual Studio
- 4. Fehler 32, Python, Datei wird von einem anderen Prozess verwendet
- 5. C# Datei.Delete, Datei wird von einem anderen Prozess verwendet
- 6. Image-Datei kopieren, wird von einem anderen Prozess verwendet
- 7. lesen Log-Datei von einem anderen Prozess verwendet
- 8. Datei lesen, die bereits von einem anderen Prozess verwendet wird
- 9. Powershell mit Datei? "Wird von einem anderen Prozess verwendet"
- 10. C# Ausnahme. Datei wird von einem anderen Prozess verwendet
- 11. Datei, die von einem anderen Prozess
- 12. System.IO.IOException: Datei von einem anderen Prozess
- 13. Erhalte eine Nachricht von einem anderen Prozess
- 14. Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird
- 15. Freigabe-Ressource von einem anderen Prozess
- 16. FileStream: von einem anderen Prozess Fehler
- 17. JAR-Datei läuft von einem anderen Verzeichnis?
- 18. Bash: Löschen von Elementen in einem Array aus einem anderen
- 19. Objekt von einem Prozess zu einem anderen übergeben
- 20. Überprüfen, ob eine Datei in Python verfügbar ist (nicht von einem anderen Prozess verwendet)
- 21. Datei wird von einem anderen Prozess verwendet. Wie kann ich wissen, welcher Prozess?
- 22. Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird
- 23. Schreiben von Text in Datei C# .das wird von einem anderen Prozess verwendet
- 24. Datei wird von einem anderen Prozess bei der Verwendung von WriteAllText in c verwendet #
- 25. Der Prozess kann nicht auf die Datei zugreifen, weil sie von einem anderen Prozess verwendet wird.C#
- 26. Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird
- 27. Codeigniter Löschen von Dateien in einem Verzeichnis funktioniert nicht
- 28. Datei kann nicht verschoben werden, da sie von einem anderen Prozess verwendet wird
- 29. Öffnen der Kamera in einem anderen Prozess
- 30. Compile-Quelldatei in einem anderen Verzeichnis?