Process.Start(url) blockiert



  • Hallo,

    ich habe da eine Sache die ich nicht verstehe.
    1)

    string url = "http://www.google.de";
    Process.Start(url);
    
    string url = "http://www.google.de";
    Process.Start("firefox",url);
    

    Der Aufruf bei 1) blockiert; heisst meine Anwendung hängt im Process.Start.
    1.a)
    Ist kein Firefox gestartet, so wird Firefox durch Process.Start gestartet mit der Seite (www.google.de). Meine Anwendung hängt im Process.Start bis ich Firefox schliesse.

    1.b)
    Ist Firefox vor dem Aufruf von Process.Start bereits gestartet, wird die Seite (www.google.de) nicht aufgerufen. Meine Anwendung hängt trotzdem bis Firefox beendet wird.

    Funktioniert wie gewünscht. Die Seite wird in jedem Fall geöffnet und Process.Start hängt auch nicht sondern kehrt sofort zurück.

    Ich will aber den vom Benutzer eingestellen Default Browser öffnen, was ja nicht zwingend der Firefox ist.
    Wieso verhält sich 1) so? Was muss ich anders machen? Jemand ne Idee?



  • Also bei mir Funktioniert 1. Einwandfrei. Machst du noch irgendwelche anderen sachen nebenher?



  • Nö. Neues Projekt, eine Form. Da ist ein LinkLabel drauf. Im OnClick mach ich das wie oben gezeigt.
    Hm ist wohl eher ein Windows Problem als ne Programmiersache. Wenn ich z.B. c:\test.txt öffne geht es wie gewünscht. Nur ich verstehe nicht, was falsch ist. 😕



  • Hmm wahrscheinlich bringt es nichts, aber zeig mal den Code.



  • Ok hat sich geklärt. Aus irgendeinem Grund war das Programm nicht erlaubt; deshalb kam auch keine Nachfrage von der Firewall.
    Warum dann 1) funktioniert und 2) nicht verstehe ich zwar immer noch nicht, aber naja 🙂



  • ihoernchen schrieb:

    Warum dann 1) funktioniert und 2) nicht verstehe ich zwar immer noch nicht, aber naja 🙂

    evt. achtet die Firewall auf das "WorkingDirectory" ... das könnten in den beiden Varianten unterschiedlich sein


Anmelden zum Antworten