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
#Include <Constants.au3>
#include <GUIConstants.au3>
#include <Array.au3>
dim $count
dim $count2
dim $arrclear[10]
dim $kill[10]
dim $i
dim $msgchecker
dim $handle
while 1
[/autoit] [autoit][/autoit] [autoit]if WinActive("Anwendung") Then
WinSetState("Anwendung", "", @SW_MINIMIZE)
endif
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
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
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)
$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
wend
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]Falls jemand ne Idee hat....
Danke im Vorraus,
Hotrodd_Todd