ERLEDIGT
JA
JA
ANTWORTEN
1
1
ZUGRIFFE
422
422
EMPFEHLEN
-
Hallo zusammen,
ich habe folgendes Problem.
Ich öffne in meinem Programm mehrere xmls die bearbeitet und wieder gespeichert werden.
Jetzt kommt es öfter mal vor dass ich die Fehlermeldung bekomme, dass der Zugriff nicht funktioniert weil wohl ein anderer Prozess auf mein file zugreift.
Ich gehe dabei folgendermaßen vor:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
XmlDocument xd = new XmlDocument(); string input = "C:\..." FileStream fsin = new FileStrea(input,FileMode.Open,FileAccess.Read,FileShare.ReadWrite); xd.Load(fsin); ... //hier wird dann das input-file bearbeitet, das Ergebnis soll dann unter inputsave gespeichert werden: XmlWriterSettings writeSet = new XmlWriterSettings(); writeSet.Indent = true; XmlWriter xmlWriter = XmlWriter.Create(inputsave, writeSet); xd.Save(xmlWriter); //danach wird inputsave weiter bearbeitet //also myprogram nimmt als Argumente inputsave und output //dabei werden aus inputsave die Informationen geholt und das Ergebnis wird in output gespeichert ProcessStartInfo startinfo = new ProcessStartInfo(); startinfo.FileName = myprogram; startinfo.Arguments = inputsave+" "+output; startinfo.WindowStyle = ProcessWindowStyle.Hidden; startinfo.CreateNoWindow = false; startinfo.UseShellExecute = false; startinfo.RedirectStandardError=true; using (Process exeProcess = Process.Start(startinfo)) { exeProcess.WaitForExit(); string errorstr = exeProcess.StandardError.ReadToEnd(); }
Die Fehlermeldung kommt unregelmäßig, also manchmal läuft es durch und manchmal hängts.
Aber es passiert dann immer an der Stelle wenn ich input unter inputsave speichern will.
Wenn ich versuche inputsave mit
System.IO.File.Delete(inputsave) zu löschen bekomm ich in dem Fall auch die gleiche Fehlermeldung
Beende ich irgendwo einen Prozess nicht anständig oder gibt es die Möglichkeit das speichern zu erzwingen also den wohl noch laufenden Prozess zu umgehen/killen?
Vielen Dank,
Babatune
-
Ah ich habs jetzt so gemacht:
und jetzt scheints zu klappenCode :1 2 3
using(XmlWriter xmlWriter = XmlWriter.Create(inputsave,writeSet)){ xd.Save(xmlWriter); }
Ähnliche Themen
-
Benutzersteuerung Access .mdw File
Von DERHAARKAMM im Forum Relationale DatenbanksystemeAntworten: 0Letzter Beitrag: 10.08.09, 14:53 -
Problem bei Build mit Ant - Cannot access ... file
Von Herr_M im Forum JavaAntworten: 4Letzter Beitrag: 14.07.09, 16:28 -
Monitor file access (Windows)
Von zu1u im Forum C/C++Antworten: 2Letzter Beitrag: 04.05.09, 09:53 -
Access mdb-File in Mysql
Von besi im Forum Office-AnwendungenAntworten: 1Letzter Beitrag: 19.04.05, 13:11 -
[ C ] File access funkioniert nicht :(
Von BeaTBoxX im Forum C/C++Antworten: 3Letzter Beitrag: 10.01.04, 19:06





Zitieren
Login





