|
You last visited: Today at 22:14
Advertisement
AutoIt Problem
Discussion on AutoIt Problem within the General Coding forum part of the Coders Den category.
03/17/2010, 16:32
|
#1
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
AutoIt Problem
Liebe Community,
ich habe versucht mit AutoIt einen kleinen Bot zu schreiben. Allerdings habe ich ein Problem mit der ControlSend Funktion. Autoit soll einen automatisch generierten Text an ein Fenster senden der in einer Variable gespeichert ist (das macht auch keine Probleme). Dazu habe ich eine Inputbox erstellt in die man den Fensternamen eingeben soll. Dieser soll daraufhin in einer Variable gespeichert werden. Nun weis ich nicht wie ich AutoIt dazu bringen kann den Text zu schreiben. Habe einiges ausprobiert, doch leider hat nichts funktioniert.
TuT´s haben mir auch nicht geholfen.
Das steht da z.Z.:
$input = InputBox("Bot", "Bitte Fensternamen eingeben")
ControlSend($input, "", , $text, 0)
Ich hoffe Ihr könnt mir sagen wie ich das ans laufen bringen kann.
mfg Nick
|
|
|
03/17/2010, 16:43
|
#2
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
ControlSend($Input1, "", , $text, 0) gibts nicht
Wenn schon, dann
ControlSend($Input, "", "", $Text)
und in der $Text steht auch was drine?
|
|
|
03/17/2010, 16:48
|
#3
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
Erstmal danke für Deine schnelle Antwort! Ich möchte gerne, dass ich das Fenster in den Hentergrund legen kann und es weiter da reinschreibt. Das funktioniet aber nicht. Was mache ich falsch?
mfg Nick
|
|
|
03/17/2010, 16:57
|
#4
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
Namen richtig geschrieben?
So gehts richtig:
Code:
$Handle = "Guild Wars"
ControlSend($Handle, "", "", "W") <- drückt die taste W in Guild Wars
Wichtig ist, das fenster nicht zu minimieren sondern direkt zu verstecken
Code:
WinSetState($Handle, "", @SW_HIDE)
|
|
|
03/17/2010, 17:16
|
#5
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
Also der großteil funktioniert schonmal. Wenn ich den Bot aber starte beendet sich das Fenster anstatt sich zu minimieren (hab den Editor genommen).
mfg Nick
PS: Hab Win 7 Pro 64Bit
|
|
|
03/17/2010, 17:20
|
#6
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
zeig mal deinen kompletten code
|
|
|
03/17/2010, 17:23
|
#7
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
HotKeySet("{F8}", "start")
HotKeySet("{F9}", "stop")
$input = InputBox("Test", "Bitte Fensternamen eingeben")
While 1
Sleep(100)
WEnd
Func start()
While 1
$text = ""
For $i=0 to 6
$grosseBuchstaben = Random(65,90)
$kleineBuchstaben = Random(97,122)
$text = $text & Chr($grosseBuchstaben)
Next
Sleep(1000)
ControlSend($Input, "", "", $Text)
ControlSend ($input, "", "", "{enter}")
WEnd
EndFunc
Func stop()
Exit
EndFunc
|
|
|
03/18/2010, 16:44
|
#8
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
Du holst es mit WinSetState($Input1, "", @SW_SHOW) wieder her
|
|
|
03/18/2010, 17:38
|
#9
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
Aber warum kommen die Tastenanschläge nicht bei dem Fenster an wenn ich es in den Hintergrund lege?
|
|
|
03/18/2010, 17:51
|
#10
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
Hintergrund oder minimiert?
|
|
|
03/18/2010, 17:55
|
#11
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
Nur im Hintergrund. Habe schon öfters gelesen, dass man nicht minimieren darf.
mfg Nick
|
|
|
03/18/2010, 17:56
|
#12
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
genau. und was genau klappt da jetzt nicht? Kommt nix an oder wie?
Was soll den gedrückt werden?
|
|
|
03/18/2010, 18:08
|
#13
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
Der Text (per Zufall generiert und dann ich einer Variable gespeichert) soll an ein Fenster gesendet werden. Damit ich das Fenster in den Hintergrund legen kann, habe ich ControlSend benutzt. Wenn ich starte, erscheint der Text auch im aktiven Fenster. Wenn ich das Fenster nun aber in den Hintergrund lege, geschieht nichts mehr. Mir ist aber gerade aufgefallen, dass wenn ich auf den Desktop klicke, nichts "herumspackt" wie wenn der Text nur an das Aktive Fenster gesendet würde. Für mich sieht es nun so aus als ob der Text zwar richtig gesendet wird aber nicht mehr ankommt sobald das Fenster im Hintergrund ist.
mfg Nick
PS: Ich hoffe Du verstehst was ich meine
|
|
|
03/18/2010, 18:20
|
#14
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
Mhh, also du hast das Chatfenster offen, startest das Script (es versteckt sich, arbeitet ControlSend ab und zeigt es wieder).
Jetzt gehste in GW schauen ob alle geklappt hat, das hat es aber nicht.
Weiß auch nicht woran das liegt
|
|
|
03/18/2010, 18:23
|
#15
|
elite*gold: 0
Join Date: Nov 2009
Posts: 50
Received Thanks: 2
|
Genau so meine ich das. Nur das ich es noch nicht in GW probiert habe sondern nur mit Editor und Notepad.
EDIT:
Mir ist da gerade was eingefallen. Ich glaube, dass es nicht funktioniert weil das chatfenster nicht angeklickt ist. Kann man problemlos nen ControlKlick einbauen ohne das die restlichen Aktivitäten am PC gestört werden (ich meine damit das sich plötzlich die Maus bewegt, aber eigentlich dürfte das doch nicht passieren oder?)?
mfg Nick
|
|
|
All times are GMT +2. The time now is 22:14.
|
|