Как заблокировать ввод

Вот недокументированная функция из User32.dll, которая блокирует ввод (мышь, клавиатуру кроме Ctrl+Alt+Del). При нажатии Ctrl+Alt+Del все разблокируется :-(

procedure BlockInput; external 'user32.dll';

Передаем параметры в стек вручную через push, иначе что-то глючит:

1 - заблокировать
0 - разблокировать

procedure Block;
asm

push 1
call BlockInput
end;


procedure UnBlock;
asm
push 0
call BlockInput
end;