Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 23:02

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



ControlSend Frage/Hilfe

Discussion on ControlSend Frage/Hilfe within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
flumio's Avatar
 
elite*gold: 50
Join Date: Feb 2009
Posts: 765
Received Thanks: 927
ControlSend Frage/Hilfe

Hallo Community,

Folgendes Problem, ich schaffe es nicht per ControlSend die Taste " / " erfolgreich abzuschicken.
Mein Ziel ist es in einen Chat eingeben zu lassen " /fenster 2 "

Was ich getestet habe ist,
Code:
ControlSend("Fenster", "", "", "+7") ;geht nicht
Code:
ControlSend("Fenster", "", "", "+{7}") ;geht einmalig, bei ner while schleife nur noch ne 7 statt /
Code:
ControlSend("Fenster", "", "", "{SHIFTDOWN}")
ControlSend("Fenster", "", "", "7")
ControlSend("Fenster", "", "", "{SHIFTUP}") ;geht auch nicht
Code:
$test = "+{7}"
ControlSend("Fenster", "", "", $test) ;geht als variable auch nicht
Ihr seht ich versuche einen Weg alleine zu finden, nach langen rescherchen frage ich jetzt doch mal auch euch.
Ich hoffe mir kann wer helfen.
flumio is offline  
Old 12/28/2013, 13:23   #2
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Hast du es überhaupt mal mit ControlSend("WinTitle", "", "", "/fenster 2") versucht?
Außerdem gehört das in die AutoIt Section -> moverequest.
Kann es sein das der Chat ein eigenes Control ist? Dann musst du das bei der Control ID angeben, oder es kann auch sein das du erstmal den Chat mit Enter öffnen musst, aber das ist sicherlich nicht dein Problem.
alpines is offline  
Old 12/28/2013, 18:05   #3
 
flumio's Avatar
 
elite*gold: 50
Join Date: Feb 2009
Posts: 765
Received Thanks: 927
Quote:
ControlSend("WinTitle", "", "", "/fenster 2")
wenn du mit WinTitle, das inaktive Fenster meinst in meinem Fall Diablo 2, sprich ("Diablo 2", "", "", "/fenster 2") das geht leider nicht.
Ergebnis wäre -> 7fenster 2

Vllt verwechsle/verstehe ich auch gerade nicht was du gezielt mit WinTitle meinst.

Evt. hilft es mehr wenn du mein Sorce Code mal siehst.
Code:
	While 1
	Global $iLoop = True
	If Not $iLoop Then ExitLoop
	ControlSend("Diablo 2", "", "", "{ENTER}")			
	Sleep(100)
	ControlSend("Diablo 2", "", "", "/fenster 1")
	Sleep(500)
	ControlSend("Diablo 2", "", "", "{ENTER}")
	Sleep(2000)												;fenster1
	If Not $iLoop Then ExitLoop
	WEnd
Wie ich schon im ersten Post erwähnt habe, hab ich es auf die anderen Möglichkeiten getestet. Mein Ergebnis ist so gut wie immer " 7fenster 1 "
Das einzigste ist bei,
ControlSend("Fenster", "", "", "+{7}")
ControlSend("Fenster", "", "", "fenster 1")
ect.
ist das erste Ergebnis " /fenster 1 " doch bei der Wiederholung der While-Schleife ist das nächste Ergebnis " 7fenster 1 "

Ich weis echt nicht mehr weiter >.<
flumio is offline  
Old 12/28/2013, 18:39   #4
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
WinTitle war der Titel vom Fenster, den kenne ich ja nicht deshalb hab ich das da einfach hingeschrieben.

Du könntest mal das hier versuchen:
Code:
ControlSend("Diablo 2", "", "", "{ENTER}" & Chr(47) & "fenster 1{ENTER}")
Vielleicht musst du die Teile mit dem Enter in unterschiedliche ControlSends packen aber sollte passen.

/ ist im ASCII-Table Index 47, d.h. Chr(47) würde einen / returnen.
alpines is offline  
Thanks
1 User
Old 12/29/2013, 07:53   #5
 
flumio's Avatar
 
elite*gold: 50
Join Date: Feb 2009
Posts: 765
Received Thanks: 927
Code:
ControlSend("Diablo 2", "", "", "{ENTER}" & Chr(47) & "fenster 1{ENTER}")
Ergebnis = 7fenster 1

Code:
ControlSend("Diablo 2", "", "", Chr(47))
Ergebnis = 7

Code:
ControlSend("Diablo 2", "", "", "{ENTER}")			
Sleep(100)
ControlSend("Diablo 2", "", "", Chr(47))
Sleep(100)
ControlSend("Diablo 2", "", "", "fenster 1")
Sleep(500)
ControlSend("Diablo 2", "", "", "{ENTER}")
Ergebnis = ( erstes mal, /fenster 1 - Wiederholtes, 7fenster 1 )

EDIT:

Code:
Opt("SendKeyDownDelay", 150)
ControlSend("Diablo 2", "", "", "{ENTER}" & Chr(47) & "fenster 1{ENTER}" & $smash)
Ergebnis = /fenster 1

wahrscheinlich lag es an Opt("SendKeyDownDelay", 150)

Ich bedanke mich trozdem bei deiner Hilfe, den ohne deinen Tipp wäre ich wohl nicht auf die Idee gekommen.

EDIT:

Zu früh gefreut, sobald ich raus Tabe ( alt+ tab ) und nicht mehr im Fenster bin,
ist das Ergebnis wieder 7fenster 1
Es lag auch nicht an "Chr(47)" es funktioniert auch "/fenster 1" wurde durch "SendKeyDownDelay" behoben.

Mein momentaner Stand,
Code:
Opt("SendKeyDownDelay", 150)
Global $iLoop = True

While 1
        Global $iLoop = True
	If Not $iLoop Then ExitLoop
	ControlSend("Diablo 2", "", "", "{ENTER}" & "/fenster 1{ENTER}" & $smash)
	If Not $iLoop Then ExitLoop
WEnd
Problem ist, sobald ich raus Tabe, ist Ergebnis = 7fenster 1

flumio is offline  
Old 12/29/2013, 13:06   #6
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Wie schauts aus, wenn du 2x / sendest? Wenn das 2. richtig ankommt kannst du das davor ja löschen.
alpines is offline  
Old 12/29/2013, 13:27   #7
 
flumio's Avatar
 
elite*gold: 50
Join Date: Feb 2009
Posts: 765
Received Thanks: 927
das Problem ist schon behoben, er sendet es jetzt richtig /fenster 1
nur sobald ich das Fenster minimiere oder raus Tabe, schickt er nur noch 7fenster
da ich aber über Controlsende, dürfte das doch normalerweise nicht passieren.
vorhin ist es mir sogar passiert, das es sogar ein paar mal gecrashed ist.
flumio is offline  
Old 12/29/2013, 14:23   #8
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Dann versuch dich mal an SendMessage / PostMessage wenn es damit nicht geht.
Oder focus das Fenster und sends dann wenn das das Problem sein sollte.
alpines is offline  
Old 12/30/2013, 14:13   #9


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,394
Arrow General Coding -> AutoIt

#moved
MrSm!th is offline  
Reply


Similar Threads Similar Threads
Brauche Hilfe in AutoIT (Controlsend)
05/26/2013 - Nostale - 2 Replies
hi erstmal, ich hab mir n bot in autoit geschrieben der permanent enter drücken soll, ich hab immer 2 nos fenster offen, aber da ich controlsend nostale hab sendet er in beide fenster was ich nicht will... habs auch schon mit wintitelchange versucht aber der fenstername von einem ändert sich nicht, jemand ne idee? :D
Frage ControlSend Problem
04/12/2012 - AutoIt - 8 Replies
Hallo, Ich habe ein "Bot" geschrieben und es funktioniert alles außer wenn ich die Taste die gesendet werden soll Manuell Fest gelegt werden soll. Ändere ich die Taste in AutoIt funktioniert alles sobal ich es manuell machen will geht es nicht. $fenstername= InputBox("Fenstername", "Bitte geben sie einen Fensternamen ein","FLYFF") $Zeit = InputBox("Interval","Interval in Millisekunden","5000") $taste= InputBox("Taste", "Bitte geben sie eine F-Taste ein","F4") $handle =...
brauche hilfe mit autoit + controlsend für shaiya
09/11/2010 - Shaiya - 4 Replies
$array = WinList ("Shaiya") $handle1 = $array $handle2 = $array WinActivate ($handle1) MsgBox(0, "h", ControlSend($handle1 ,"","", "{1}")) HotKeySet ("{0}", "Start") HotKeySet ("{9}", "pause") Global $Paused
HILFE BEI PIXELSEARCH UND CONTROLSEND ZUSAMMEN AGIEREN LASSEN
07/02/2010 - AutoIt - 7 Replies
HI @all;) also ich hab wieder mal ein kleines Problemchen;) mit meinem Farmerama-Bot. Mein Bot sucht (mit pixelsearch) auf DER GANZEN SEITE nach deHexcode... Findet sie und giebt sie an Controlklick weiter.... Nur leider ist das geckopluginwindow (für Controlclick) Kleiner und auch noch zu scrollen (F *A *R *M *E *R *A *M *A . d e )
Controlsend ^ / !
12/30/2008 - Guild Wars - 9 Replies
Hiho, ich hatte im Botbereich schon gefragt,aber da war iwas mit No Questions. Hier fragen jedenfalls auch Leute und deshalb stell ich die Frage hier: Ich habe mir ein Tool gebaut, was einen String, der von einem GUIinput in einer Variable geschrieben wurde, an x-beliebig viele GW-Fenster über Controlsend sendet. -soweit funktionierts- Nur leider geht dabei weder Capslock, noch die Zeichen ^ / ! (da sie in Autoit ja andere Funktionen haben). Ist es möglich, diese trotzdem per Controlsend...



All times are GMT +2. The time now is 23:02.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.