If-Schleife

  • Hallo,
    habe mir ein kleines Script geschrieben,dass beim starten von firefox eine andere exe. starten soll...
    Ich habe die abfrage, ob firefox geöffnet ist, natürlich in einer Schleife geschrieben...., dass öffnen der exe. hab ich da auch mit in die Schleife geschrieben. Natürlich öffnet er jetzt die exe. zich mal...
    Wie kann ich das ändern?

    Mein script:

    [autoit]

    While True
    If ProcessExists ( "firefox.exe" ) Then
    ShellExecute ( "Firefox-Haubtscript.exe" )
    EndIf
    WEnd

    [/autoit]
  • du könntest abfragen, ob der Prozess schon existiert.
    Oder du machst das alles variabelgesteuert a la

    [autoit]


    $exist = false
    while true
    if processexists("firefox.exe") then
    if $exist = false then
    $exist = true
    ShellExecute ( "Firefox-Haubtscript.exe" )
    endif
    else
    if $exist = true then $exist = false
    endif

    [/autoit]

    ist ungetestet (Linux), vllt hab ich auch einen Denkfehler...

    MfG,
    Fresapore

  • [autoit]

    While True
    If ProcessExists ( "firefox.exe" ) Then
    ShellExecute ( "Firefox-Haubtscript.exe" )
    ExitLoop
    EndIf
    WEnd

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • [autoit]

    While True
    If ProcessExists("firefox.exe") And Not ProcessExists("Firefox-Haubtscript.exe") Then
    ShellExecute("Firefox-Haubtscript.exe")
    ExitLoop
    EndIf
    WEnd

    [/autoit]
  • AspirinJunkie,
    ich habe "nur" geantwortet.

    Du hast ja gleich optimiert ;)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Danke AspirinJunkie, so werd ichs machen,
    an alle anderen sorry, meine Frage war etwas blöd gestellt...

  • Kann mal einer Haubtscript zu Hauptscript machen, das tut ja beim Lesen weh... :whistling:

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o

  • Wenn das aufzurufende Programm in AutoIt geschrieben ist, schaue dir doch bitte die geniale Funktion _Singleton an.

    Gruß,
    Matthias