Wie startet man ein Programm im Hintergrund auf dem Server? Ich habe schon zwei Ansätze verfolgt, beide funktionieren, jedoch nicht so wie ich es will.
Ich habe mich extra in asp.NET eingearbeitet, finde den Ansatz von asp.net ganz gut, aber jetzt weiche ich vom Thema ab.
Wenn ich über eine asp-Seite mein Programm starte, läuft es, jedoch bekomme ich es nicht zu sehen. Es ist ein konsolenbasiertes Programm, und diese Konsole bräuchte ich...
// start.aspx.cs
[...]
Process myProcess = new Process();
string path = @"C:\Dokumente und Einstellungen\André\Eigene Dateien\Programming\FGEngine\FGEngine.exe";
try{
myProcess = Process.Start(path);
}
catch(Win32Exception exp){
[...]
Das habe ich aus verschiedenen Seiten zusammengebastelt. Was ich auch probiert hatte, war über ProcessStartInfo WindowStyle es sichtbar zu machen, doch das zeigte keine Wirkung.
Mein zweiter Ansatz war mit PHP. Wenn ich mein Programm direkt über shell_exec starten will, war mir klar, dass das Programm nur solange läuft, wie php, bzw andersherum. Desshalb habe ich eine .cmd-Datei geschrieben und ausprobiert: "start FGEngine.exe". Wenn ich sie (per doppelklick) ausführe öffnet sich mein Programm wie gewollt in einem neuem Fenster, und das andere Schließt sich. Desshalb hätte ich erwartet, dass PHP die cmd ausführt, und dann weiterläuft. Anscheinend wartet es, bis auch das Programm geschlossen wird