Automatisch Hotkeys einfügen

08/16/2011 21:08 Ludder231#1
Hi,

ich wollte mal was fragen: Man kann ja mit Autoit so Tastendrücke aufzeichenen iwie. Und jz wollte ich fragen wie weil ich will mir nen Makro Tool machen und wenn man ne taste drückt zeichnet das Programm dann den nächsten Tastendruck auf und fügt in in ne input odersowas ein. Wie?

MfG Ludder231
08/16/2011 21:09 buFFy!#2
_IsPressed
08/16/2011 21:27 Ludder231#3
Quote:
Originally Posted by buFFy! View Post
_IsPressed
Ja toll gz :D Wie wärs mit nem auch nur so klitzekleinem beispiel? ;) SOll ich For $i=o to 80(wobei hier die Zahl der Tasten auf einer Tastatur entspricht) und das allse iwie mit dllopen??
08/16/2011 21:32 Freddy​#4
Quote:
Originally Posted by Ludder231 View Post
Ja toll gz :D Wie wärs mit nem auch nur so klitzekleinem beispiel? ;) SOll ich For $i=o to 80(wobei hier die Zahl der Tasten auf einer Tastatur entspricht) und das allse iwie mit dllopen??
PHP Code:
#include <Misc.au3>

$dll DllOpen("user32.dll")

While 
1
    Sleep 
250 )
    If 
_IsPressed("7B"$dllThen
        MsgBox
(0,"","")
        
ExitLoop
    
EndIf
WEnd
DllClose
($dll
Wenn du F12 drückst kommt ne msg box da kannste zB Inputbox etc. reinschreiben
08/16/2011 21:35 Ludder231#5
Quote:
Originally Posted by 'Butterkuchen View Post
PHP Code:
#include <Misc.au3>

$dll DllOpen("user32.dll")

While 
1
    Sleep 
250 )
    If 
_IsPressed("7B"$dllThen
        MsgBox
(0,"","")
        
ExitLoop
    
EndIf
WEnd
DllClose
($dll
...

So weit war ich auch scohn aber wie ist das mit weil ich kann ja net alle tasten da auflisten oder? Das muss dann doch mit For- gehen oder?

MfG Ludder231
08/16/2011 21:41 Freddy​#6
Quote:
Originally Posted by Ludder231 View Post
So weit war ich auch scohn aber wie ist das mit weil ich kann ja net alle tasten da auflisten oder? Das muss dann doch mit For- gehen oder?

MfG Ludder231
ICh weiß nicht genau was du meinst, aber wenn du mit den 0 To 80 die Keys meinst, geht das nicht nur mit zahlen, weil in einigen Key buchstaben auftauchen
08/16/2011 21:43 | Moep |#7
Quote:
Originally Posted by Ludder231 View Post
Ja toll gz :D Wie wärs mit nem auch nur so klitzekleinem beispiel? ;) SOll ich For $i=o to 80(wobei hier die Zahl der Tasten auf einer Tastatur entspricht) und das allse iwie mit dllopen??
Man man man... so lernst du nie wie man an Probleme rangehen muss um sie selber zu lösen.

Code:
#include <Misc.au3>
$dll = DllOpen("user32.dll")
While Sleep(10)
	For $i = 0x01 to 0xA5
    If _IsPressed($i, $dll) Then ToolTip(Chr(dec($i)))
	Next
WEnd
DllClose($dll)


Quote:
Originally Posted by 'Butterkuchen View Post
ICh weiß nicht genau was du meinst, aber wenn du mit den 0 To 80 die Keys meinst, geht das nicht, weil in einigen Key buchstaben auftauchen
Häh?! Was laberst du!
08/16/2011 21:48 Freddy​#8
Quote:
Originally Posted by | Moep | View Post
Häh?! Was laberst du!
Er schrieb mit 0 To 80 und ich habe gesagt, dass es nicht so funktioniert weil keys mit zahlen gibt. in seinem beispiel
08/16/2011 21:52 | Moep |#9
Versteh immer noch nicht was du uns damit sagen willst, sorry...
08/16/2011 21:56 Ludder231#10
Quote:
Originally Posted by | Moep | View Post
Man man man... so lernst du nie wie man an Probleme rangehen muss um sie selber zu lösen.

Code:
#include <Misc.au3>
$dll = DllOpen("user32.dll")
While Sleep(10)
	For $i = 0x01 to 0xA5
    If _IsPressed($i, $dll) Then ToolTip(Chr(dec($i)))
	Next
WEnd
DllClose($dll)




Häh?! Was laberst du!
Ja genau so meinte ich das ungefähr :) >For $i = 0x01 to 0xA5<
08/17/2011 06:35 buFFy!#11
geht das so? also das das mit for geht ist klar, aber akzeptiert _ispressed das so? ich glaub man muss hex(i) nutzen.
08/17/2011 10:41 Ludder231#12
Quote:
Originally Posted by buFFy! View Post
geht das so? also das das mit for geht ist klar, aber akzeptiert _ispressed das so? ich glaub man muss hex(i) nutzen.
Gehen tuts ja, aber iwie wird "j" nicht aufgezeichnet :)
08/17/2011 18:09 | Moep |#13
Quote:
Originally Posted by Ludder231 View Post
Gehen tuts ja, aber iwie wird "j" nicht aufgezeichnet :)
Grad auch mitbekommen, gab noch nen par andere chars bei dems nicht gefunzt hat. Probier mal des:
Code:
#include <Misc.au3>
$dll = DllOpen("user32.dll")
While Sleep(10)
	For $i = 0 to 165
    If _IsPressed(Hex($i), $dll) Then ToolTip(Chr($i))
	Next
WEnd
DllClose($dll)