200 if abfragen oder gehts einfacher?

12/13/2010 15:19 .BritainAndy#1
Moin leute,

ich melde mich auch mal wieder mit einem Problem.
Ich möchte ein Skript machen, dass wenn man eine Taste drückt es die gedrückte Taste in ner MSGBOX wiedergibt.

PHP Code:
while 1
For $i = 0 To 256
        
If _IsPressed($i) Then


        MsgBox
(0,"Taste","Die gedrückte Taste war "&$i)


        EndIf

    
Next
WEnd 
Nur das Problem ist ja, dass dann nur die Zahl, die für die Taste ist, ausgegeben wird angezeigt wird.

Also z.b.

"Die Gedückte Taste war 46"

Wie kann ich denn die Zahlen den buchstaben zuweisen, bzw die zahlen sind ja buchstaben zugewiesen aber wie lasse ich die buchstaben ausgeben?

soll ich nun 256 if abfragen machen ?

if zahl = xx then ?

Das wäre mir zu mühseelig.
Gibts noch ne Variante mit nen Array z.b.?

Hab gestenr mit lolkop ma drüber gesprochen, aber nur kurz .

Wäre nett, wenn ihr mir helfen könntet.

MfG, BritainAndy
12/13/2010 15:34 ZeraPain#2
_HexToString($i)
12/13/2010 16:05 mipez#3
Ehm ja... _IsPressed benutzt Hexdezimale, oô

Code:
Dec ( "hex" )
Hex ( expression [, length] )
Hier mal die Dezimal-Liste der Tasten:

Könntest auch GetKeyBoardState nehmen...
12/13/2010 16:58 ZeraPain#4
will ich ja mal sehen wie du mit dec einen key ausgeben willst ;-)
12/13/2010 17:46 .BritainAndy#5
was mich ein wenig verwirrt ist es, wenn ich mir jetzt mal die erstellte datei angucke oO

PHP Code:
#include <File.au3>
#include <String.au3>
#include <Misc.au3>

while 1

For $i = 0 To 256
        
If _IsPressed($i) Then

        $buchstabe 
= _HexToString($i)
        
$file = "Test.txt"
        
FileWrite ($file, $buchstabe)



        EndIf

    
Next

wend 
ich hab in normaler geschwindigkeit als test einfahc nachdem ich das script gestartet habe 'hallo' in die tasten getippt und in der datei steht das:

Quote:
HHHHHHHHHHHHHAAAAAAAAAAAAAAA
12/13/2010 19:27 ZeraPain#6
keylogger ftw?
mach ein sleep dahinter
12/13/2010 20:10 omer36#7
Quote:
Originally Posted by ZeraPain View Post
keylogger ftw?
mach ein sleep dahinter
dachte ich auch..

schau mal hier im autoit bereich 30-40seiten zurück, gabs schon 3mal oderso und alle haben volle antworten bekommen...
12/13/2010 20:37 .BritainAndy#8
vielen dank euch erstmal.
Ne wird kein Keylogger, ich will so lediglich den Vorgang meines Charakters in einem Spiel protokollieren, da ich einen Bot nutze von einer nicht sehr vertrauenswürdigen Seite und ich mal schauen möchte was dieser Bot so alles macht.
Ich hab jetzt ein sleep gesetzt, jedoch weiß ich nicht wiehoch, da der bot ja schon alles in normaler tippgeschwindigkeit loggen soll.
12/13/2010 20:40 ZeraPain#9
wenn der bot wirklich keys drückt dann könntest du dir auch selbst so einen machen..
12/13/2010 20:44 PenGuin :O#10
Code:
#include <File.au3> 
#include <String.au3> 
#include <Misc.au3> 

while 1 

For $i = 0 To 256 
        If _IsPressed($i) Then 

        $buchstabe = _HexToString($i) 
        $file = "Test.txt" 
        FileWrite ($file, $buchstabe) 
        Do
              Sleep(50)
       Until Not _IsPressed($i)


        EndIf 

    Next 

wend
Wozu Sleep?
12/13/2010 20:56 ZeraPain#11
und wenn du jetzt 2 mal den gleichen buchstaben drücken willst?
12/13/2010 21:07 PenGuin :O#12
Dann ist genau wo das Problem?
12/13/2010 21:46 ZeraPain#13
nvm
12/13/2010 21:50 .BritainAndy#14
danke penguin und zera.

ihr wart mir ne große hilfe.

Mein bot nutzt nur teilweise keys, arbeitet also meist mit memory editing.
Danke an euch :)