求winform禁用可以封锁程序的方法(禁用键盘)
求winform禁用可以关闭程序的方法(禁用键盘)
rt。就是做一个界面,要求的是这个界面只能用鼠标点击(其他的键值屏蔽,因为没输入框等,所以就等同于禁用掉组合键例如Ctrl+F4 等一切可以关闭此界面的方法!)
急需!!!
------解决思路----------------------
重写wndproc方法
------解决思路----------------------
这个只是简单的屏蔽了alt+f4和alt+空格,没屏蔽像win+d,win+e这样的快捷键,如果想屏蔽所有热键和快捷键(比如win+d,ctrl+c,ctrl+v等等)可以试试键盘钩子
------解决思路----------------------
任务管理器中是否仍然可以结束进程?,我想除限制Keyword还应该考虑进程吧。
------解决思路----------------------
那就麻烦了,就算是开个线程将任务管理器给扼杀了,至少还有种方法可以关掉你的winform程序
开始=》运行=》cmd=》输入: taskkill /f /im 进程名.exe
或者用批处理也能结束进程
除非像360那样让用户结束不掉进程,或者开两个进程,双进程保护,or 隐藏进程
不过那样没必要,一断电啥都没了
rt。就是做一个界面,要求的是这个界面只能用鼠标点击(其他的键值屏蔽,因为没输入框等,所以就等同于禁用掉组合键例如Ctrl+F4 等一切可以关闭此界面的方法!)
急需!!!
------解决思路----------------------
重写wndproc方法
------解决思路----------------------
这个只是简单的屏蔽了alt+f4和alt+空格,没屏蔽像win+d,win+e这样的快捷键,如果想屏蔽所有热键和快捷键(比如win+d,ctrl+c,ctrl+v等等)可以试试键盘钩子
protected override void WndProc(ref Message m)
{
const int WM_SYSCOMMAND = 0x112;
//屏蔽alt+空格,alt+f4
if (m.Msg == WM_SYSCOMMAND)
{
if (m.LParam == IntPtr.Zero
------解决思路----------------------
m.LParam == (IntPtr)32)
{
return;
}
}
base.WndProc(ref m);
}
------解决思路----------------------
任务管理器中是否仍然可以结束进程?,我想除限制Keyword还应该考虑进程吧。
------解决思路----------------------
那就麻烦了,就算是开个线程将任务管理器给扼杀了,至少还有种方法可以关掉你的winform程序
开始=》运行=》cmd=》输入: taskkill /f /im 进程名.exe
或者用批处理也能结束进程
除非像360那样让用户结束不掉进程,或者开两个进程,双进程保护,or 隐藏进程
不过那样没必要,一断电啥都没了