如何屏蔽Alt+F4

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何屏蔽Alt+F4相关的知识,希望对你有一定的参考价值。

新建文本文档,输入:

[code=BatchFile]
@echo off
title 屏蔽/允许 ALT-F4 组合键
cls
set rp=HKLM\\SYSTEM\\CurrentControlSet\\Control\\Keyboard Layout
set rv=Scancode Map
set /p ok=屏蔽或解除ALT-F4组合键 [Y-屏蔽 N-解除]: 
if /i %ok%==Y (reg add "%rp%" /v "%rv%" /d 00000000000000000200000038e03e0000000000 /t reg_binary /f&&cls&&echo 屏蔽了ALT-F4组合键,重启计算机生效!)
if /i %ok%==N (reg delete "%rp%" /v "%rv%" /f&&cls&&echo 解除了ALT-F4组合键的屏蔽,重启计算机生效!)
echo.&&echo.&&pause
[/code]

将扩展名改为bat,以管理员方式打开,按照提示操作,重启即可。

--------------------------------------------------------------------------

补充:这是全局禁用,如果是你编的应用里要禁用的话请参考其他回答。

参考技术A 你好,建议你把F4这个键给抠掉应该就可以避免了。 参考技术B 在窗口中注册热键,然后在窗口中接收热键。
vc++示例:
在cpp中增加(其中classname,baseclassname 为类名和基类名):
#define ID_WM_HOTKEY (0x1000)
BEGIN_MESSAGE_MAP(classname, baseclassname)
ON_MESSAGE(WM_HOTKEY,OnHotKey)
END_MESSAGE_MAP()
LRESULT classname::OnHotKey(WPARAM wParam,LPARAM lParam)

return 1;


中.h中定义
afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);
在create窗口后
RegisterHotKey(m_hWnd,ID_WM_HOTKEY,MOD_ALT,VK_F4);
在destroy窗口前
UnregisterHotKey(m_hWnd,ID_WM_HOTKEY);

搞定。
参考技术C 在HOOK中断定消息的WPARAM和LPARAM就可滤过ALT+F4 参考技术D 这个是屏不掉的,是系统自带的组合建

怎么屏蔽电脑的alt+f4关闭程序功能

直接屏蔽很困难,通常是编程实现。不过你可以用注册另外软件热键的方法来屏蔽,比如QQ里设置一个alt+F4的热键,这样就alt+F4就不会有关闭程序的功能了。具体你可以随便在开始——程序里找个程序的快捷方式图标,右键选属性,指定快捷键 参考技术A 窗口中注册热键,然后在窗口中接收热键。
vc++示例:
在cpp中增加(其中classname,baseclassname 为类名和基类名):
#define ID_WM_HOTKEY (0x1000)
BEGIN_MESSAGE_MAP(classname, baseclassname)
ON_MESSAGE(WM_HOTKEY,OnHotKey)
END_MESSAGE_MAP()
LRESULT classname::OnHotKey(WPARAM wParam,LPARAM lParam)

return 1;


中.h中定义
afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);
在create窗口后
RegisterHotKey(m_hWnd,ID_WM_HOTKEY,MOD_ALT,VK_F4);
在destroy窗口前
UnregisterHotKey(m_hWnd,ID_WM_HOTKEY);
在HOOK中断定消息的WPARAM和LPARAM就可滤过ALT+F4
参考技术B 把form1的keypreview属性设成true,然后在FORM1的KeyDown写代码:

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);
begin
if key=vk_f4 then key:=0;
end;
参考技术C 用360.。。。。。。。。本回答被提问者采纳

以上是关于如何屏蔽Alt+F4的主要内容,如果未能解决你的问题,请参考以下文章

如何用C#来屏蔽ALT+F4

delphi 如何屏蔽win98和winme下的系统热键alt+f4,ctrl+

屏蔽Alt+F4关闭窗体

钩子编程(HOOK) 屏蔽全部按键鼠标及系统功能键

如何解除屏蔽切换

如何让delphi任务管理器失效,让程序无法关闭??