Hallo Community!
Ich entwickle grad eine Anwendung, mit der ich verschiedene Webs auf einem Server über ein ASP.NET Script live nehmen kann.
Dazu rufe ich die svn.exe mit System.Diagnostics.Process.Start() mit den entsprechenden Parametern auf. Das funktioniert auch alles wirklich gut.
Mein Problem an der Sache stellt sich folgendermassen dar:
Wenn ich die Anwendung aus dem Studio heraus starte läuft alles ohne Verzögerung. Also 'svn info [REPO]' oder 'svn update [REPO]' funktionieren sofort.
Wenn ich aber die Anwendung auf meinem Dev-Rechner über den IIS öffne, oder die Anwendung auf meinem Live-Server ausführe, bleibt die Anwendung währen des Aufrufs process.start() für 15 - 20 Sekunden lang stehen. Die Anweisung wird ausgeführt, aber jede Aktion braucht eine gewisse Zeit und ich kann mir nicht erkären, warum.
Konkret bleibt die Anwendung beim ersten Aufruf des Befehls
stehen (ich schreibe die Ergebnis-Ausgabe in eine Datenbank), dann hängt sie die paar Sekunden und der Rest rennt dann in einem Bruchteil einer Sekunde durch.
Ich habe auch schon ein wenig rumprobiert, z.B. habe ich Befehle wie 'dir /s' in der Anwendung cmd.exe ausgeführt, was keine Verzögrung bringt.
Ich denke, dass es was mit Berechtigungen zu tun hat, aber ich weiß nicht genau, wo ich hinschauen soll. Vielleicht kann mir ja hier jemand damit helfen!
Vielen Dank und einen schönen Tag,
Vanguard
Ich entwickle grad eine Anwendung, mit der ich verschiedene Webs auf einem Server über ein ASP.NET Script live nehmen kann.
Dazu rufe ich die svn.exe mit System.Diagnostics.Process.Start() mit den entsprechenden Parametern auf. Das funktioniert auch alles wirklich gut.
Mein Problem an der Sache stellt sich folgendermassen dar:
Wenn ich die Anwendung aus dem Studio heraus starte läuft alles ohne Verzögerung. Also 'svn info [REPO]' oder 'svn update [REPO]' funktionieren sofort.
Wenn ich aber die Anwendung auf meinem Dev-Rechner über den IIS öffne, oder die Anwendung auf meinem Live-Server ausführe, bleibt die Anwendung währen des Aufrufs process.start() für 15 - 20 Sekunden lang stehen. Die Anweisung wird ausgeführt, aber jede Aktion braucht eine gewisse Zeit und ich kann mir nicht erkären, warum.
Konkret bleibt die Anwendung beim ersten Aufruf des Befehls
Code:
line += process.StandardOutput.ReadLine();
Ich habe auch schon ein wenig rumprobiert, z.B. habe ich Befehle wie 'dir /s' in der Anwendung cmd.exe ausgeführt, was keine Verzögrung bringt.
Ich denke, dass es was mit Berechtigungen zu tun hat, aber ich weiß nicht genau, wo ich hinschauen soll. Vielleicht kann mir ja hier jemand damit helfen!
Vielen Dank und einen schönen Tag,
Vanguard
Comment