AutoIt Hotkeys

05/28/2009 12:48 YowDaw#1
Hallo,

ich bin schon in der Kategorie "Fortgeschritten" im Bereich AutoIt.
Soch jetzt kommt etwas, was ich leider noch nicht benutzt habe und somit nicht kenne.

Ich will das nach dem drücken von einem Buchsataben also z.B. "z" etwas ausgeführt wird. Dadurch das es kein HotKey ist klappt das leider nicht, jetzt hoffe ich auf eure Hilfe.

Hier noch der Code, jetzt weiss ich wenigstens wie es nicht geht... (Das sind nur die Zeilen wo das Problem hängt ich hab alles was man brcuth des ist mein einzigstet Problem)

Code:
HotKeySet ("{z}", "Start")
HotKeySet ("{y}", "Start2")

Func Start()
Send ("{BACKSPACE}")
Send ("y")
EndFunc

Func Start2()
Send ("{BACKSPACE}")
Send ("z")
EndFunc
05/28/2009 13:18 Adroxxx#2
PHP Code:
HotKeySet ("z""Start")
HotKeySet ("y""Start2")

Func Start()
Send ("{BACKSPACE}")
Send ("y")
EndFunc

Func Start2
()
Send ("{BACKSPACE}")
Send ("z")
EndFunc 
Jetzt sollte es gehen. Wenn du ABC usw als Hotkey machen willst musst du
sie bei HotKeySet "x" machen, anstatt "{x}"
05/28/2009 14:14 YowDaw#3
Geht nicht
05/28/2009 14:33 fieser-hund#4
PHP Code:
HotKeySet ("z""Start")
HotKeySet ("y""Start2")
while 
1
sleep
(200)
wend

Func Start
()
Send ("{BACKSPACE}")
Send ("y")
EndFunc

Func Start2
()
Send ("{BACKSPACE}")
Send ("z")
EndFunc 
jetzt müsste es gehen
05/28/2009 14:37 Adroxxx#5
Quote:
Originally Posted by Quicknation View Post
Geht nicht
Wenn du dich selbst als Fortgeschritten einstufst, solltest du doch wissen, dass du noch eine While Schleife brauchst. Ich bin jetzt davon ausgegangen, dass dies nur ein Code Snippet ist und nicht dein ganzes Script.

Wie fieser-hund schon gesagt hat, ein While 1 dann sollte es gehen. Kannst dir natürlich auch eine andere Schleife bauen mit eingaben usw.
05/28/2009 15:07 YowDaw#6
Ich hab doch gesagt dass das nur ein Ausschnitt ist. Wie gesagt das ist mein einzigstet Problem (soweit ich weiss)
05/28/2009 15:14 Adroxxx#7
Hab den Threadtitel btw. geändert. AutoIt ist nicht sehr aussagekräftig.
Ja gut wenn es nur ein Ausschnitt ist, dann musst du ja irgendwo anders eine Schleife haben, dass sich dein Programm nicht beendet oder?

Also der Code ist auf jedenfall richtig. Ich habs gerad getestet. Wenn du das While1 drin hast, damit sich das Programm nicht beendet, geht es. Sollte auch gehen, wenn du irgendwo eine andere Schleife drin hast, die verhindert dass, das Programm sich schließt.

Wenn du das hast, und es immernoch nicht geht, dann könnte dein Problem an einer anderen Stelle liegen.
05/28/2009 17:55 YowDaw#8
Code:
While 1
	Sleep (1000)
WEnd

HotKeySet ("z", "Start")
HotKeySet ("y", "Start2")

Func Start()
Send ("{BACKSPACE}")
Send ("y")
EndFunc

Func Start2()
Send ("{BACKSPACE}")
Send ("z")
EndFunc
Das ist der Code, der Rest ist alles das gleiche.
Ich will ja das nach dem drücken von z.B. "z" das "z" gelöscht wird also mit "BS" und dann soll das "y" gedrückt werden...
05/28/2009 18:40 Adroxxx#9
Achso. Wieso stellst du deine Tastatur nicht einfach um ? ALT + Shift stellt deine Tastatur auf Englisches Layout dann haste z -> y udn y -> z.
05/28/2009 18:55 YowDaw#10
-.- *Kopf an Wand schlag*
Es hat schon damit was zu tun.... ich weiss selber wei man die Sprache umstellt...
EInfach nur um den Bot kümmern, wenn es so einfach wäre würde ich den nicht machen :P
06/01/2009 14:18 YowDaw#11
*UP*
Das Problem steht immer noch
06/01/2009 18:18 felixli93#12
vllt solltest du die while-schleife mal nach den beiden hotkeyset-befehlen packen?
weil wie ich aus deinem code erlesen kann, kommt autoit gar nicht zum setten der hotkeys, weil er aus der vorausgehenden while-schleife gar nicht rauskommt -.-

//edit:

btw: wenn du HotkeySet ("z", "_z") machst
und Func _z ()
Send ("z")
EndFunc machst

dann wird sich sobald du z drückst die funktion _z andauernd wiederholen, weil du ja innerhalb der funktion _z wieder z drückst und das löst dann wieder den hotkey aus.
also nur so zur info, nicht wundern dann
06/02/2009 19:58 YowDaw#13
Nein es ist ja:

Code:
Func _z()
Send ("{BACKSPACE}")
Send ("[B][U]y[/U][/B]")
EndFunc
Es soll ja nach dem Dürcken von "z", "Backspace (Hast du vergessen)" und dann "y" drücken. Also zum Beißpiel ich schreibe das mit meinem Bot der gerade an ist:
"Hallo wie war es den so im Zoo"
Dann lautet der Text am Ende:
"Hallo wie war es den so im Yoo"
06/02/2009 21:36 felixli93#14
ok, hab nicht gescheit gelesen

aber was funzt denn dann nicht?
bist du dir auch sicher, dass das
Quote:
While 1
Sleep (100)
WEnd
nach den beiden Hotkeyset-befehlen kommt?
06/02/2009 22:45 YowDaw#15
Ich weiss mittlerweile den Fehler, war wikrlich nur was kleines am Ende des Codes.
Stimmt wie du gesagt hast dann wiederholt sich das immer wieder...