为啥 BlockInput 对我不起作用?我忘了啥吗?
Posted
技术标签:
【中文标题】为啥 BlockInput 对我不起作用?我忘了啥吗?【英文标题】:Why does the BlockInput not work for me ? Did i forget anything?为什么 BlockInput 对我不起作用?我忘了什么吗? 【发布时间】:2019-07-11 22:22:12 【问题描述】:想短时间屏蔽用户键盘输入,但是方法不行。
公共部分类 NativeMethods
[DllImport("user32.dll", EntryPoint = "BlockInput")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool BlockInput([MarshalAs(UnmanagedType.Bool)] bool fBlockIt);
public class KeyboardBlocker
public static void Block(int span)
try
NativeMethods.BlockInput(true);
Console.WriteLine("should have blocked");
Thread.Sleep(span);
finally
NativeMethods.BlockInput(false);
有人有想法吗?已经谢谢了
【问题讨论】:
究竟是什么不起作用?你从BlockInput
得到的返回值是多少?如果它不为零,您可以使用 GetLastError
获取最后一个错误。
我真的没有得到返回值
【参考方案1】:
显然 BlockInput 函数在 64 位中不起作用。您可以从这里尝试答案: Using BlockInput to block keyboard and mouse input.
【讨论】:
它是如何使用的?以上是关于为啥 BlockInput 对我不起作用?我忘了啥吗?的主要内容,如果未能解决你的问题,请参考以下文章