Cannot disable CTRL+ESC and ALT+TAB under Windows NT (125614)



The information in this article applies to:

  • Microsoft Platform Software Development Kit (SDK) 1.0

This article was previously published under Q125614

SYMPTOMS

CTRL+ESC and ALT+TAB task switching cannot be disabled by an application running under Windows NT.

Capturing WM_SYSCOMMAND messages and not sending them on for processing by DefWindowProc() allowed task switching to be disabled in Windows version 3.1, but it doesn't work under Windows NT.

CAUSE

A primary reason for this change is to avoid dependence on an application for processing of these key combinations. This way a hung application can be switched away from by using either CTRL+ESC or ALT+TAB.

RESOLUTION

You can disable CTRL+ESC on a system-wide basis by replacing the NT Task Manager. This is not recommended.

You can disable ALT+TAB and ALT+ESC while a particular application is running if that application registers hotkeys for those combinations with Register HotKey().

Another mechanism to disable these key combinations, as well as the newer Windows key, is to use a low level keyboard hook (WH_KEYBOARD_LL). This hook is available on Windows NT 4.0 Service Pack 3 and later. The low level keyboard hook can also detect CTRL+ALT+DEL, but it cannot disable it.

STATUS

This behavior is by design.

REFERENCES

For additional information about how the task managers in Windows NT and 16-bit Windows 3.1 differ, click the following article number to view the article in the Microsoft Knowledge Base:

101659 How Windows NT, 16-bit Windows 3.1 Task Managers differ


Modification Type:MinorLast Reviewed:7/11/2005
Keywords:kbHook kbInput kbprb KB125614