Gå til innhold

Anbefalte innlegg

Skrevet

Jeg har tenkt å lage en keylogger som lagrer informasjon i en txt fil. Her er den foreløbige koden:

using System;
using System.Windows.Forms;



public class Keydemo:Form 
{

string log;

public Keydemo() 
{

this.KeyUp += new KeyEventHandler(OnKeyPress);
this.Text="En keylogger";

}

public void OnKeyPress(object sender, KeyEventArgs e)   
{
log=log+e.KeyCode.ToString();

}

public static void Main()  
{
Application.Run(new Keydemo());
}

}

Så skal jeg lagre dette i en txt fil. Har søkt mye, men fant ikke noe. Så spørsmålet er: hvordan lagrer jeg informasjon til en lokal fil ?

Videoannonse
Annonse
Skrevet (endret)

public void ToFile(string filename)
{
 System.IO.FileStream stream = new System.IO.FileStream(filename, System.IO.FileMode.Append);
 System.IO.StreamWriter writer = new System.IO.StreamWriter(stream);
 writer.Write("Log started " + Date.Now().ToString() + '\n');
 writer.Write(log);
 writer.Flush();
 writer.Close();
}

 

Du kan unngå å bruke stream, men bare bruker streamwriter, men jeg ser på det som en litt dårlig skikk.(kanskje ikke det akademiske miljøet)

 

Når du legger sammen stringene, burde du legge til en newline '\n'

Endret av GeirGrusom
Skrevet (endret)

Har spurt flere andre plasser og har fått beskjed om å bruke C isteden. Lurer forresten på om Microsoft.net og alt det der som skal til for å få kjørt en exe fil(C#), følger med i windows Longhorn ?

Endret av willbend
Skrevet

Du tenker på .NET Framework? ja, det følger vel også med Service Pack 2, hvis jeg ikke tar helt feil.

 

kommentar: Du kan skrive log += e.KeyCode.ToString(); istedet for log = log + (dette er Visual Basic måten å gjøre det på)

Skrevet (endret)

... ville ikke "\n" er vel stort sett det samme som Environment.Newline, er det ikke?

Tror nok Compileren bytter ut "\n" med Environment.Newline, for det er neppe hardkodet som 0x000d000a(windows unicode)

Endret av GeirGrusom

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...