Windows キー と Alt+キー を無効にしたい

解決


T2  2004-11-28 21:56:05  No: 11963  IP: 192.*.*.*

Windows XP で、アプリケーションが起動してから終了するまで、
Windows キー と Alt+キー (Alt+TAB とか)を無効にしたいので
すが、どうしたらいいのでしょうか?

編集 削除
ヤシュ・クック・モ  2004-11-29 18:08:56  No: 11964  IP: 192.*.*.*

そのアプリがアクティブな間だけ無効にするのか、
アクティブでない時も無効にするのかで違うと思いますが、
後者の場合だと、キーフックを用いなければなりません。

XP(NT系のWindows)であるなら
SetWindowsHookEx
LowLevelKeyBoardProc
というAPIを組み合わせて利用すれば大抵のキーを無効にできると思います。
...といきなり関数名を言われても困惑しちゃいますよね。
わたしも昔同じような事を行うアプリを作ったんですが、説明するのが難しいんで(説明できるほど理解できてない(ToT))
検索サイトで上の言葉で探してみて下さい。結構見つかると思います。

また特定のマシンだけで無効にしたいなら、レジストリをいじって無理矢理
キーマップを変更する、という荒業もあった気がします。
(これはあまりお勧めしませんが...)

編集 削除
ヤシュ・クック・モ  2004-11-29 20:39:59  No: 11965  IP: 192.*.*.*

About Delphi
http://www2.big.or.jp/~osamu/Delphi/

ここのサイトのDelphi-ML過去ログの
[52825]「Fw: キーフックとは?」から始まるあたり
なんか参考になりませんか?
というか私もここを参考にしたのでした。

知りたい内容とハズしてたらごめんなさい。

編集 削除
T2  2004-12-08 21:52:18  No: 11966  IP: 192.*.*.*

ヤシュ・クック・モ さんありがとうございました。
教えていただいたHP上のプログラムを使わせていただき、うまくいきました。

編集 削除