Ich habe viele Dateien in einem Verzeichnis, Meine App, muss einige Dateien in ein anderes Verzeichnis verschieben. Wenn ich das tat, funktioniert das erste Mal gut, aber danach habe ich eine Ausnahme wie: System.IO.IOException: Prozess kann nicht auf die Datei zugreifen, weil ein anderer Prozess die Datei verwendet.Datei kann nicht verschoben werden, da sie von einem anderen Prozess verwendet wird
Ich schließe Windows Explorer oder ein Programm, die Verwendung der Datei zu vermeiden, aber das Problem besteht weiterhin.
ich Verschieben von Dateien auf diese Weise:
private void ExtractosRemover()
{
string dirOrigen = '\\' + @"\" + servidor + @"\" + "EEQ_" + User.Identity.Name.ToString() + @"\";
string dirDestin = '\\' + @"\" + servidor + @"\" + "FacturasMatch_" + User.Identity.Name.ToString() + @"\";
try
{
foreach (GridViewRow grd_Row in this.gvwExtractosMatch.Rows)
{
File.Move(System.IO.Path.Combine(dirOrigen, clean(grd_Row.Cells[7].Text) + ".xml"), dirDestin);
}
}
catch (FileNotFoundException)
{
}
catch (IOException ioex)
{
lbl_UbiDevMensaje.Text = string.Empty;
lbl_UbiDevMensaje.Text = ioex.ToString();
}
}
Für die Namen der Dateien, habe ich eine Gridview gelesen, und ich fügen Sie die Erweiterungen. Ich weiß nicht, was passiert,
Bitte, ich hoffe, jemand kann mir helfen.
Vielen Dank im Voraus.
freundlichen Grüßen
Was sonst sind Sie mit der Datei zu tun, nachdem Sie es zu bewegen? Außerdem können Sie herausfinden, was es mit ProcessExplorer abschließt. – muratgu
Hallo, danke für Ihren Kommentar, Process Explorer oder Tasklist enthüllt nichts, Es gibt mehrere Dateien im Verzeichnis, mein Job ist sie in ein anderes Verzeichnis verschieben (um zu wissen, welche Dateien muss ich verschieben, verwende ich Gridview Werte). Die Dateien werden zuvor von den Benutzern auf den Server hochgeladen. –