C#实现键盘(除了ESC)和鼠标被锁定,按下ESC后 解锁 这种是怎么搞出来的。。

C#实现键盘(除了ESC)和鼠标被锁定,按下ESC后 解锁 这种是怎么搞出来的。
我刚开始想用API 后来发现不行。BLOCKINPUT(TRUE)后检测不到键盘输入了。
这个东西怎么实现嗯。查了一早上了。刚刚学习C# 谢谢大家、
钩子好难啊。希望大家解答 谢谢~

我的思路是:循环监听键盘输入,若是ESC,退出循环