我试图在您在计算机上键入某个单词时尝试这样做,它会给出一个您输入该单词的消息框。但我无法弄清楚它将如何进行此项检查。键盘记录器写入log.txt,但不显示消息框。我究竟做错了什么?
public static void Main()
{
var handle = GetConsoleWindow();
// Hide
ShowWindow(handle, SW_HIDE);
_hookID = SetHook(_proc);
Application.Run();
UnhookWindowsHookEx(_hookID);
string text = System.IO.File.ReadAllText(Application.StartupPath + @"\log.txt");
if (text.Contains("TEST"))
{
MessageBox.Show("You typed the word test!");
}
}
答案 0 :(得分:0)
因为Application.Run()
阻止了。您可以按 Ctrl + C 退出应用程序,然后不运行Application.Run()
之后的代码。
如果您希望if (text.Contains(...))
经常运行,请将其放在计时器中,或者只是在_proc
中进行测试。