Hallo, ich habe mir zur Vereinfachung und aus Sicherheitsgründen ein Script zur Durchführung Internetbanking geschrieben.
- eine auf Floppy gespeicherte zugangs.txt mit den Zugangsdaten wird mit Editor aufgerufen
- IE mit Bank-Loggin wird aufgerufen (RunWait())
- Zugangsdaten werden durch copy & paste aus der txt-Datei in IE-Loggin manuell übernommen
- Nach Abschluss I-Banking wird nach manuellem Beenden des IE automatisch der Editor geschlossen, zum Entfernen der FloppyDisc aufgefordert, der 'Ccleaner' gestartet und danach das Script beendet.
Funktioniert auch alles bestens, wenn nicht bereits eine IE-Instanz läuft. Dann ist der Befehl RunWait() wirkungslos. Das Script "saust" durch, schließt den Editor wieder - ehe ich copy & paste überhaupt ansatzweise durchführen kann .
Wo liegt das Problem, habe keine Ahnung, wo ich ansetzen soll. AutoIt ist auch sehr neu für mich. Bitte um Hilfe.
Hier der Code:
Spoiler anzeigen
#NoTrayIcon
AutoItSetOption("MustDeclareVars", 1)
call(doSparkasse())
;
Func doSparkasse()
Local $runAppl1, $runAppl2, $runAppl3, $dlgName, $dlgText, $dlg, $lwFloppy
;
$dlgName = "Bankaufruf"
$dlgText = "!! ACHTUNG !! ---- !! ACHTUNG !! ---- !! ACHTUNG !!" & chr(13) & _
"================================" & chr(13) & chr(13) & _
"1. Floppy " & chr(34) & "Bank-Security" & chr(34) & " eingelegt ?" & chr(13) & chr(13) & _
"2. Bevor Sie mit " & chr(34) & "OK" & chr(34) & " fortsetzen, bitte alle momentan geöffneten " & chr(13) & _
" Browser- und/oder Notepad-Instanzen schließen." & chr(13) & chr(13)
$dlg = MsgBox(33, $dlgName, $dlgText)
If $dlg = 1 then
$lwFloppy = "A:\"
If DriveStatus($lwFloppy) = "READY" Then
$runAppl1 = "C:\windows\system32\notepad.exe A:\Zugang.txt"
$runAppl2 = chr(34) & "C:\Programme\Internet Explorer\iexplore.exe " & chr(34) & _
chr(34) & "https://banking.sparkasse-msh.de/cgi/anfang.cgi" & chr(34)
$runAppl3 = "E:\Win-Prog\CCleaner\CCleaner.exe /Auto"
Run($runAppl1, "A:\", @SW_RESTORE)
RunWait($runAppl2, "", @SW_MAXIMIZE)
$dlg = WinActivate("Zugang.txt - Editor", "")
$dlg = WinClose("Zugang.txt - Editor", "")
while DriveStatus($lwFloppy) = "READY"
$dlgText = "Nicht vergessen:" & chr(13) & "FLOPPY RAUSNEHMEN !!"
$dlg = MsgBox(65, $dlgName, $dlgText)
If $dlg = 2 Then
$runAppl1 = ""
$runAppl2 = ""
$runAppl3 = ""
$dlg = ""
$dlgName = ""
$dlgText = ""
$lwFloppy = ""
Exit
EndIf
WEnd
If $dlg = 1 Then Run($runAppl3, "", @SW_HIDE)
ElseIf DriveStatus($lwFloppy) = "NOTREADY" Then
$dlgText = "Floppy " & chr(34) & "Bank-Security" & chr(34) & " ist nicht eingelegt!" & chr(13) & _
"Soll der Vorgang wiederholt werden?"
$dlg = MsgBox(52, $dlgName, $dlgText)
If $dlg = 6 then call(doSparkasse())
EndIf
EndIf
;
$runAppl1 = ""
$runAppl2 = ""
$runAppl3 = ""
$dlg = ""
$dlgName = ""
$dlgText = ""
$lwFloppy = ""
;
EndFunc
Warte auf einen Vorschlag, vielen Dank,
HalleMike
Edit BugFix: Bitte immer Code-Tags verwenden, habs mal für dich gemacht.