Java Fenster hinter MSGBox

  • Tach erstmal,

    folgendes Problem,
    habe hier ein Programm geschrieben welches ständig im Hintergrund läuft(per Endlosschleife)
    und checkt per Fensternamen ob ein bestimmtes Programm geöffnet ist, falls ja - wird das Programm minimiert,
    aus diesem Programm werden IE Fenster per Java geöffnet, beim Öffnen dieser Fenster wird eine *.wav Datei abgespielt funkt alles super.
    Nur nachdem eine gewisse Anzahl Fenster geöffnet würden soll einen MSG Box erscheinen welche die bis dahin geöffneten Fenster nach Klick auf OK schliessen soll.
    Funkt soweit alles mein einziges Problem ist, das ich die MSGBOX einfach nicht in den Vordergrund Kriege.
    Hab WinActivate usw. alles schon probiert, also will mal sagen, das womit man normalerweise sowas steuert, aber da tut sich nix.

    Wäre für Hilfe jeder Art dankbar.

    Hier erstmal der Quelltext:

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #Include <Constants.au3>
    #include <GUIConstants.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    dim $count
    dim $count2
    dim $arrclear[10]
    dim $kill[10]
    dim $i
    dim $msgchecker
    dim $handle

    [/autoit] [autoit][/autoit] [autoit]

    while 1

    [/autoit] [autoit][/autoit] [autoit]

    if WinActive("Anwendung") Then
    WinSetState("Anwendung", "", @SW_MINIMIZE)
    endif

    [/autoit] [autoit][/autoit] [autoit]

    if WinActive("Fenster_aus_Anwendung") Then

    while $count = 0
    $handle = WinGetHandle("[ACTIVE]")
    $kill[$i] = $handle
    $i = $i + 1
    SoundPlay("C:\sound\Sound.wav",1)
    SoundPlay("")
    $count = 1
    wend

    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    if WinActive("Fenster2_aus_Anwendung") Then
    while $count2 = 0
    $handle = WinGetHandle("[ACTIVE]")
    $kill[$i] = $handle
    $i = $i + 1
    SoundPlay("C:\sound\Sound.wav",1)
    SoundPlay("")
    $count2 = 1
    wend

    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    if $i = 2 Then
    ;Hier ein kleiner Hilfloser Versuch das ganze per WinMove zu lösen, hat aber nix gebracht
    WinMove("Fenster_aus_Anwendung", "", 10, 10, 0, 0)
    WinMove("Fenster2_aus_Anwendung", "", 20, 20, 0, 0)

    [/autoit] [autoit][/autoit] [autoit]

    $i = $i -1
    $msgchecker = MsgBox(1, "Close 2", "Sollen die Fenster geschlossen werden")
    WinSetOnTop("Close 2", "Sollen die Fenster geschlossen werden","")
    WinActivate("Close 2", "Sollen die Fenster geschlossen werden")
    ;_ArrayDisplay($kill)
    if $msgchecker = 1 Then
    while $i >= 0
    WinClose($kill[$i])
    $i = $i -1
    WEnd
    $i = 0
    $count = 0
    $count2 = 0
    $kill = $arrclear
    endif

    ;Die sind nur zum Testen des Array_Inhalts eingebaut worden
    ;_ArrayDisplay($kill)
    ;_ArrayDisplay($arrclear)
    endif

    [/autoit] [autoit][/autoit] [autoit]

    wend

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]

    Falls jemand ne Idee hat....

    Danke im Vorraus,
    Hotrodd_Todd

  • Danke erstmal,

    tja, RTFM, war anscheinend gestern schon so am verzweifeln das ich`s einfach überlesen hab und hab mich von den Java Fenstern zu arg verwirren lassen.

    Funktioniert so einwandfrei, hab noch`n sleep vor die Ausgabe der MSGBOX gesetzt, da die Fenster die vom Programm geöffnet werden ne gewisse Ladezeit haben und somit die MSGBOX dann wieder im Hintergrund wär.

    Also nochmals danke an alle die dieses Forum so lebendig und wirklich hilfreich am Leben erhalten,

    mit besten Grüßen,
    Hotrod_Todd