AutoIt Login Bot

05/30/2013 02:00 gametom50#1
Hey Leute,

hab mal wieder ne Frage und zwar möchte ich mir einen Login Bot erstellen,
dafür hab ich mir ein Gui angefertigt und kann dort halt noch auswählen welches Ch ich spielen möchte usw.
Mein Problem ist, dass wenn ich die .py Datei schreiben lassen möchte einfach nicht reagiert wird.
Eigentlich habe ich dem Button zugewiesen die Datei zu schreiben, aber seit dem ich es mit einem Button probiert habe funktioniert es einfach nicht.

LG Tom
05/30/2013 02:28 KDeluxe#2
Ohne deinen Quellcode kann man nicht präzise helfen.

Code:
;[...]
Case $btn_SaveLogin
	$hFile = FileOpen(@ScriptDir & "\Login.py", 2)
	If @error Then MsgBox(48, "Fehler", "Ein Fehler ist aufgetreten: " & @error)

	FileWriteLine($hFile, GUICtrlRead($inp_Username))
	FileWriteLine($hFile, GUICtrlRead($inp_Password))
;[...]
05/30/2013 02:59 gametom50#3
sowas sieht schonmal gut aus, danke erstmal dafür :D.
aber warum "(@ScriptDir & "\Logininfo.py", 2)" die "2" am Ende? :D
also ich möchte am ende genau das hier mit meinen angepassten daten geschrieben haben:

import serverInfo
serverNum=1
serverChannel=1
addr_new = serverInfo.REGION_DICT[0][serverNum]["channel"][serverChannel]["ip"]
port_new = serverInfo.REGION_DICT[0][serverNum]["channel"][serverChannel]["tcp_port"]
account_addr_new = serverInfo.REGION_AUTH_SERVER_DICT[0][serverNum]["ip"]
account_port_new = serverInfo.REGION_AUTH_SERVER_DICT[0][serverNum]["port"]
addr=addr_new
port=port_new
id="LoginHere"
pwd="passwordHere"
account_addr=account_addr_new
account_port=account_port_new
slot=0
autoLogin=0
autoSelect=0
----------------------------------------------------------

LG Tom
05/30/2013 03:48 KDeluxe#4
Schau einfach mal in die Hilfe, es ist alles gut beschrieben.

Du kannst die Daten immer zeilenweise abspeichern, du kannst aber auch einfach ein FileWrite() verwenden.
Statt "LoginHere" verwendest du einfach GUICtrlRead() mit entsprechendem Eingabefeld.

Code:
FileWrite($hFile, 	'[...]' & _
					'id=' & GUICtrlRead($inp_Login) & + _
					'pwd=' & GUICtrlRead($inp_Password) & _
					'account_addr=account_addr_new' & _
					'account_port=account_port_new' & _
					'[...]')
05/30/2013 14:15 gametom50#5
okey, die letzte frage wäre dann, wie ich bei dem hier einstellen kann, dass er die ausgelesenen inputs in anführungszeichen angibt? sonst funktioniert der bot nicht..

FileWriteLine ( "logininfo.py", 'id=' & GUICtrlRead($Input1) )
FileWriteLine ( "logininfo.py", 'pwd=' & GUICtrlRead($Input2) )
05/30/2013 15:25 KDeluxe#6
Quote:
Originally Posted by gametom50 View Post
ich verzweifel gleich -.-,

kannst du mir das teil nicht netterweise so hinschreiben wie es im script stehen muss?
Wo würde dann der Lerneffekt bleiben?


Quote:
Originally Posted by gametom50 View Post
das mit dem GUICtrlRead hab ich verstanden, ich check nur nicht wie ich das ganze file schreibe -.-, also am besten einfach das hier mit filewrite oder filewrite line:
Das habe ich dir in 2 verschiedenen Beiträgen geschrieben. Das ganze zu lesen, zu verstehen und dann auf deine Bedürfnisse anzupassen ist deine Aufgabe.

Quote:
Originally Posted by gametom50 View Post
ich glaub du hast meine frage falsch verstanden :D
ich möchte die datei neu erstellen lasse, also sie ist garnicht vorhanden :P
deswegen muss da alles rein ;D!
Ich habe dich nicht falsch verstanden, hier mal ein Auszug aus der Hilfe:
Quote:
Originally Posted by AutoIt Hilfe
Opening a file in write mode creates the file if it does not exist.
An meinem Beispiel
siehst du auch, wie du die ganze Datei auf einmal schreiben kannst, nicht zeilenweise.
Ok, ich habe vergessen die Zeilenumbrüche hinzuzufügen, aber auf solche Kleinigkeiten solltest du schon selber kommen:
Code:
'[...]' & @CRLF & _
'id="' & GUICtrlRead($inp_Login) & '"' & @CRLF & _
'pwd="' & GUICtrlRead($inp_Password) & '"' & @CRLF & _
'account_addr=account_addr_new' & @CRLF & _
'account_port=account_port_new' & @CRLF & _
'[...]'

Quote:
Originally Posted by gametom50 View Post
okey, die letzte frage wäre dann, wie ich bei dem hier einstellen kann, dass er die ausgelesenen inputs in anführungszeichen angibt? sonst funktioniert der bot nicht..
Siehe oberer Code.

Verwende zur Nachvollziehbarkeit des Codes aussagekräftige Variablenbezeichnungen.
05/30/2013 15:32 gametom50#7
Sorry,

hab meinen post eig nochmal editiert bevor du drauf geantwortet hast o_O
naja musste nurnoch wissen wie ich da in "" schreibe, danke :)!

LG Tom