[AutoIT] Auto Login mit Checkbox

07/08/2008 16:02 blauwiggle#1
Hallo,

ich habe ein neues Problem. Da ich BlackWorkX nicht immer nerven mag, schreibe ich es hier ^^

Ich habe eine GUI mit der Möglichkeit, einen Auto Login zu nehmen. Nun habe ich das Problem, dass wenn ich die Checkbox deaktiviere, dass das Programm Guild Wars dennoch startet und versucht sich einzuloggen.

Code:
$STATE = GUICtrlRead($login)
If $STATE == 1 Then
	$login = True
Else
	$login = False
EndIf



While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $end
			_exitit()
		Case $start
			_start()
		Case $save
			_saveini()
	EndSwitch
WEnd



Func _login()
	run(RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\ArenaNet\Guild Wars", "path"))
	Sleep(5000)
		If Not WinActivate("Guild Wars") Then
			WinActivate("Guild Wars")
		EndIf
	MouseClick("left", 105, 280) ; E-Mail Feld
	Sleep(2000)
	; E-Mail
	$email_login = GuiCtrlRead($email)
	Send($email_login, 1)
	Sleep(1000)
	Send("{TAB}") ; Sprung zum Passwort Feld
	Sleep(1000)
	; Passwort
	$password_login = GuiCtrlRead($password)
	Send($password_login, 1)
	Sleep(2000)
	MouseClick("left", 430, 336) ; Einloggen Button
	Sleep(5000)
	MouseClick("left", 660, 745) ; Spielen Button
	Sleep(10000)
EndFunc



Func _start()
	If $login == True Then
		_login()
		_cxb()
	Else
		_cxb()
	EndIf
EndFunc


Func _cxb()
While 1
  For $runstotal = 1 to 10
   _wayout()
   _fight();
  Next
   _storage()
   _trader();
WEnd
EndFunc
Ich hoffe, dass mir jemand die Lösung verraten kann und die entsprechenden Stellen markiert bzw. ersetzt.
07/08/2008 16:12 Azunai#2
in dem part finde ich keinen fehler

liegt wohl in der cbx function

bzw probier doch mal

If GUICtrlRead($login) = 4 Then
$login = false
Else
$login = true
EndIf
07/08/2008 19:52 blauwiggle#3
Problem wurde gelöst. Nun habe ich noch ein anderes. Meine Variablen werden nicht mehr erkannt. Ich hatte das früher immer so:

Code:
$hm_button_x = 1105
$hm_button_y = 55

$gh_button_x = 360
$gh_button_y = 70

$resign_x = 650
$resign_y = 540
usw. ...
Jetzt kommt als Fehler:

Code:
Variable used without being declared.:
MouseClick("left", $hm_button_x, $hm_button_y)
MouseClick("left", ^ ERROR
Irgendwie muss ich die nun deklarieren, soviel geht mir aus dem Text hervor.
07/08/2008 20:20 MasteR GunneR#4
setz "Global" davor. Sollte das Problem beheben ;)
07/08/2008 20:30 Tyon#5
Hat Catalysm folgendes weg editiert oder habe ich mich irgendwie verlesen?
Dachte er hätte es mit Dim und Global probiert.
07/08/2008 20:33 blauwiggle#6
habe es weg editiert ... ich versuche es jedoch nochmal

*EDIT: Problem gelöst, mir viel eben ein (aus dem DV-Unterricht), dass ich die Variablen ganz oben deklarieren muss und nicht irgendwo im Code -.-