Frage

Ich erstelle ein Programm, das eine konfigurierte Anwendung mit den bestandenen Paramtern über eine URL mit Shell Execute eröffnet. Ich habe dies mit Folgendem erreicht:

ProcessStartInfo procinfo = new ProcessStartInfo(URI);
procinfo.UseShellExecute = true;
Process App = Process.Start(procinfo);

Ich möchte diesen Prozess später nach einigen Minuten durch dieses Projekt töten, das ich von app.kill () machen könnte, aber das Problem ist, dass der Prozess.Start () immer null zurückgibt, wenn ich den URI übergehe. Wie könnte ich diesen Prozess erreichen?

War es hilfreich?

Lösung

Wenn die Adresse der ausführbaren Datei eine URL ist, wird der Prozess nicht gestartet und Null wird zurückgegeben. http://msdn.microsoft.com/en-us/library/53ezey2s.aspx

Selbst wenn Sie einen Browser angeben, kann der Prozess ein einfacher Handler sein, der eine Nachricht an einen vorhandenen Prozess sendet (oder einen anderen Prozess öffnet) und sich sofort schließt.

Sie können jedoch den gewünschten Browser explizit starten, wenn Sie wissen, wie der Prozess funktioniert.

Process p = Process.Start(browserExePath, url);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top