Directory.Move():Der Zugriff auf den Pfad wird verweigert

Directory.Move():Der Zugriff auf den Pfad wird verweigert

Danke euch allen für die Antworten und Hilfe. Ich habe herausgefunden, was das Problem war.

Das liegt daran, dass eine Datei nicht vollständig geschlossen wurde.

Ich habe die generierten Dateien überprüft und die Dateien übersehen, aus denen das Programm gelesen hat.

Alle erzeugten Dateien wurden vollständig geschlossen. Es war eine Datei, die ich StreamReader verwendet habe zu öffnen, aber nicht geschlossen. Ich habe den Code geändert und habe jetzt kein Problem mehr, also nehme ich an, dass das Problem dort lag.

Danke für all die Kommentare und Antworten, die mir definitiv beim Nachdenken und Lösen des Problems helfen.


Siehe http://windowsxp.mvps.org/processlock.htm

Manchmal versuchen Sie, eine Datei oder einen Ordner zu verschieben oder zu löschen, und erhalten eine Zugriffsverletzung oder Datei wird verwendet - Fehler. Um eine Datei erfolgreich zu löschen, müssen Sie den Prozess identifizieren, der die Datei gesperrt hat. Sie müssen den Vorgang zuerst beenden und dann die jeweilige Datei löschen. Um zu erfahren, welcher Prozess eine Datei gesperrt hat, können Sie eine der in diesem Artikel beschriebenen Methoden verwenden.

Mit Process Explorer – Download von http://download.sysinternals.com/files/ProcessExplorer.zip

Process Explorer zeigt Ihnen Informationen darüber, welche Handles und DLLs Prozesse geöffnet oder geladen haben.

Laden Sie Process Explorer von der Microsoft-Website herunter und führen Sie das Programm aus. Klicken Sie auf das Menü Suchen und wählen Sie Find Handle oder DLL ... Geben Sie den Dateinamen ein (Name der Datei, die von einem Prozess gesperrt ist). Klicken Sie nach Eingabe des Suchbegriffs auf Schaltfläche SuchenSie sollten die Liste der Anwendungen sehen, die auf die Datei zugreifen.