Folgendes Problem. Ich möchte auf ein Upload-Fenster warten und dann Dateinamen übergeben. Es funktioniert auch wunderbar, leider habe ich ein komisches Problem auf einem entfernten System auf welches ich per RDP zugreife. Wenn das Fenster offen ist, funktioniert alles. Wenn dieses RDP-Fenster minimiert ist, läuft WinActivate ins Leere und WinWaitActive (Zeile 10 bzw. Zeile 11) wird entsprechend nicht ausgelöst! Wenn ich mich das RDP-Fenster in den Vordergrund hole, funktioniert das Skript...
Das Problem scheint nicht neu zu sein, eine Lösung kann ich leider nicht entdecken.
Code
Func manageUploadDialog($fileDir, $fileName)
;Diese Funktion kann sowohl für Chrome, als auch Firefox verwendet werden
$fullpath = StringReplace($fileDir & $fileName, "/", "\")
For $i = $timetowait To 1 Step -1
writeLog("Waiting for Window (Firefox): Datei hochladen")
If WinExists("Datei hochladen") Then
;MsgBox("","WinExists!","WinExists mit 'Datei hochladen'")
WinActivate("Datei hochladen")
;MsgBox("","WinActivate!","WinActivate mit 'Datei hochladen'")
If WinWaitActive("Datei hochladen") <> 0 Then
MsgBox("","WinWaitActivate!","WinWaitActivate mit 'Datei hochladen'")
writeLog("Uploading File in : " & $fullPath)
Send($fullPath)
Send("{ENTER}")
ExitLoop
EndIf
Else
;MsgBox(48, "", "Window does not exist 1",2)
EndIf
writeLog("Waiting for Window (Chrome): Öffnen")
If WinExists("Öffnen") Then
WinActivate("Öffnen")
If WinWaitActive("Öffnen") <> 0 Then
writeLog("Uploading File in : " & $fullPath)
Send($fullPath)
Send("{ENTER}")
ExitLoop
EndIf
Else
;MsgBox(48, "", "Window does not exist 2",2)
EndIf
Sleep(1000)
Next
If $i = 0 Then
MsgBox(16,"Eingabe","Fenster nicht gefunden",2)
writeLog("Error: Uploadwindow not found", true)
Else
MsgBox(64,"Eingabe","Fenster gefunden!" & @CRLF & @CRLF & "[1] " & $fileDir & @CRLF & "[2] " & $fileName,2)
evaluate("upload dialog successful")
writeLog("SCRIPT FINISHED UPLOAD-DIALOG")
EndIf
EndFunc
Alles anzeigen