ここは ASP.NET のフォーラムですので、 まずは、 その範囲で。
ASP.NET を含む Web アプリケーションでは、 クライアントコンピュータのキーボードやマウスをコントロールすることはできません。
※ とある Web ページ (ホームページ) を見に行っただけで、 キーとマウスが利用できなくなったとしたら…?
では、 Web アプリケーションではなくて、 Windows 用のアプリケーションならどうでしょう?
OS から信頼された状態でインストールされたアプリケーションは、 基本的にはなんでもできます。 ので、 キーボードやマウスをコントロールすることも、 基本的には可能です。
ただし、 Ctrl + Alt + Del は無効に出来ません。
なぜなら、 Ctrl + Alt + Del は、 必ず真っ先に GINA ( Graphical Identification and Authentication ) が処理するからです。
そこで一つの方法としては…
http://msdn.microsoft.com/msdnmag/issues/02/09/CQA/
MSDN Magazine : September 2002
So one way to disable Ctrl+Alt+Del is to write a new MyGina.dll with stubs that call the old msgina.dll and a WlxLoggedOnSAS function that gobbles the key. Or, you could write a keyboard driver.
…自前の GINA を作って置き換える、 あるいは、 ( GINA よりさらに先に処理をする ) キーボードドライバを書いて置き換える、 という方法が考えられます。
しかし、 考えられはしますが、 とてもそんなものを作れるとは思えませんね。
上の MSDN Magazine の記事は、 その後が秀逸です。 逆転の発想で、 「Ctrl + Alt + Del を潰せなくても、 タスクマネージャが起動しなければいいじゃないか」 というのです。 そして、 その他のウィンドウを切り換えるショートカット ( Alt+Tab, Ctrl+Esc, Alt+Esc など ) を潰す方法と合わせて、 サンプルコードがダウンロード出来るようです。
※ この手法、 GINA が廃止された Vista では、 通用するかどうかは不明です。 念のため。