2017-10-19 4 views
0

こんにちは私は、教育目的のために、単純なキーロガーを作成していると私はそれがどのようにファイルへの唯一の1文字をログに記録して、ループが続くが、ログに記録されませんなぜ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 
関連する問題