Autoit Send Problem

06/02/2011 12:08 Kronasify#1
Hey ich hab in Autoit diese Kleine Funktion gebastelt
Quote:
HotKeySet ( "{1}" , "Glas" )

while 1
sleep(1)
wend;

Func Glas ()
Send ("{Enter}")
Send("/give ")
Send("mikemikemikemike ")
Send("20 ")
Send("66")
EndFunc
Das klappt ganz super !
Aber sobald ich jetzt einen weiteren Hotkey einfüge

Quote:
HotKeySet ( "{1}" , "Glas" )
HotKeySet ( "{2}" , "Eis" )

while 1
sleep(1)
wend;

Func Glas ()
Send ("{Enter}")
Send("/give ")
Send("mikemikemikemike ")
Send("20 ")
Send("66")
EndFunc


Func Eis ()
Send ("{Enter}")
Send("/give ")
Send("mikemikemikemike ")
Send("42 ")
Send("66")
EndFunc
Klappt garnichts mehr . Das würd ich als FatalError Bezeichnen.
Habe alles mögliche versucht . Weiß wer was ich falsch mache?
06/02/2011 12:44 omer36#2
Das Problem ist hier, das in deiner SendFunktion die selbe Zahl enthält, die dein HotKeySet.

HotKeySet ( "{2}" , "Eis" )
;;;
Send("20 ")
;;

In dem Momemt wenn er die zahl sendet, ruft er wieder die Funktion auf, und das endet quasi in einer endlosschleife...

du könntest zb die hotkeys ändern:

HotKeySet ( "{NUMPAD1}" , "Glas" )
HotKeySet ( "{NUMPAD2}" , "Eis" )

oder mit _IsPressed arbeiten.
06/02/2011 19:28 VirtualDrive#3
ja, oder die Sondertasten benutzen:

HotKeySet("{HOME}", "start")
HotKeySet("{PAUSE}" , "pause")
HotKeySet("{END}", "ende")

Die F-Tasten gehen ebenfalls

Gruß
V.D.

EDIT: und mach den Sleep größer; das sind Millisekunden!