
No.4ベストアンサー
- 回答日時:
>グローバルキーフック
これの引数っていろいろありますよね?
マウスとキーボードだけは.NETで捕らえることができます。
ただCTL+ALT+DELというショートカットは、これらの管理よりもっと深いところで行われているので、仮にCで作成してフックしても目的の制御の実現は出来ません。
>グローバルキーフックを使用しないで
となると、やはり#1さんの方法しかありません。
#1さんの参考URL中に
「SAS発生時の動作:」
というのがあります。そこに
「GINAのWlxLoggedOnSas()」
というところがあるのですが、その近辺を熟読してください。
そしてこれ
http://msdn.microsoft.com/en-us/library/aa380570 …
#1さんが示した情報は「古い」のではなく、古くから存在する実現方法というだけです。
そして現在、新たな別方法が出現しているわけではありません。
.NETで作成するDLLとCで作成するDLLは当然異なりますので、質問の
「VB.NETで、[Ctrl]+[Alt]+[Del]を無効にするプログラム」
という質問には、「無理です」としか言いようがありません。
その後色々考えましたが、Vista/7 以降はマイクロソフト社も対応していないので、現実を考えますと無理だとわかりました。
この件は、残念ですが、諦めます。
皆さん、色々お知恵をいただきまして、誠にありがとうございました。
また何かの機会がございましたら、その時はお知恵をお貸しください。
どうもありがとうございました。
No.8
- 回答日時:
失礼しました、
私の回答のイメージとしては、
展示会場等に設置する、誰でも触れるパソコンで、
ずっとある特定のプログラムのみが動作している
環境を想定して書いています
ですので、[ALT]が無理であれば、[CTRL]でも何でも
ハード的に殺してしまって、隠してあるキーボード
でユーザーがメンテナンスを行うイメージでの回答
ですので、
そもそもの考えが違うのであれば、無視してください。
連投すみません
この回答への補足
ご回答ありがとうございます。
お察しの通り、イメージが違いますね。
せっかくご回答いただいたのに、申し訳ございません。
他の方法を検討したいと思います。
ご回答ありがとうございました。
No.6
- 回答日時:
特定のPCで動かすのであれば、
キーボードばらして、ハード的に[ALT]キーを殺しておく方が楽な気がしますね
この回答への補足
ご回答ありがとうございます。
トリッキーな手法ですね。
残念ながら、[Alt]キーを完全無効にするとアクセスキーが使用できなくなりますので、それはできません。
申し訳ございません。
もう少し他の方法等を模索いたします。
どうもありがとうございました。
No.5
- 回答日時:
#2で補足された方法は、プラットフォーム呼び出し機能でネイティブDLLを利用して、そこからグローバルフックを利用しようよいうものでしょう。
既にVBの話ではないと思います。>[Ctrl]+[Alt]+[Del]を、全部同時に押下された場合はフックが難しいかもしれませんが、現実はタイミングがずれますので、その過程でフックして無効化できると考えています。
では[Ctrl]、[Alt]、[Del]全て無効にでもするのでしょうか?
残念ながら、その3つの入力がそろった時点で、グローバルフックとは別の機構でセキュリティ画面が開いてしまいます。要するにグローバルフックを使っても無理だということです。
#1さんが回答している方法でWindowsXP以前なら無効にできます。Windows Vista以降はおそらく無効にはできないでしょう。
この回答への補足
ご回答ありがとうございます。
キーフックですが、例えば[Ctrl]と[Alt]が押された場合、[Alt]を無効にする。
(恐らく、[Ctrl]+[Alt]押下後に[Del]押下が一般的だと感じます)
[Ctrl]+[Alt]+[Del]の直接制御が難しい場合、上記のような組み合わせを、考えています。
もう少し、色々考えてみたいと思います。
どうもありがとうございました。
No.2
- 回答日時:
>グローバルキーフックを使用しないで、実現する方法はありますでしょうか?
>できれば、VB.NETでコード実装したいと考えています。
この条件なら無理でしょう。[Ctrl]+[Alt]+[Del]はOSがその入力を監視しているため、グローバルフックでも取得できないはずです。そもそも、そのグローバルフックを.Netで作れるのですか?
まぁそれ以前に、OSの動作を変更するようなプログラムを、.Netで作ろうというのが間違ってると思うのですが・・・
この回答への補足
ご回答、ありがとうございます。
グローバルフックの件ですが、マイクロソフト社は
http://support.microsoft.com/kb/319524/ja
で、「.Net」でのグローバルフックをサポートしていませんが、実際には
http://hongliang.seesaa.net/article/7651626.html
のようにできます。
[Ctrl]+[Alt]+[Del]を、全部同時に押下された場合はフックが難しいかもしれませんが、現実はタイミングがずれますので、その過程でフックして無効化できると考えています。
今回の私の質問は、それをさらに前進させて、今依頼されていますVB.NET開発の環境の中で、グローバルフックを用いずにできないか?、と問い合わせていただきました。
もしそれができるのでしたら、大変わがままっぽいお願いではありますが、ご回答の程お願いいたします。
No.1
- 回答日時:
こんにちは。
下記サイトをご参照ください。
http://nienie.com/~masapico/doc_DisableSAS.html
OSの一部を書き換えるため、慎重にテストしてください。
では。
この回答への補足
ご回答ありがとうございます。
できれば、VB.NETでコード実装したいと考えています。
わがままをいって、申し訳ございません。
それと、同参照先の情報は少し古いと感じます。
できれば、「.NET 2.0」以上で対応したいと考えています。
重ね重ねわがままばかりで、申し訳ございません。
上記わがままにご回答いただけましたら、幸いでございます。
どうぞよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ランディングネットにフックが...
-
アニメのグッズで紐みたいなの...
-
アカエイが釣れてしまったら?
-
サイディングにフックを付けたい!
-
時のオカリナ(裏)の攻略法
-
壁に取り付けるフックを探して...
-
重たい額縁の絵の飾り方
-
キャタピラベルト用真鍮線フッ...
-
トラックの観音扉にコンパネを...
-
溝のない鴨居(無目?)にフッ...
-
古バドの年代別特徴は?
-
コンクリート壁に使えるフック
-
ナマズルアー(キャタピー)の...
-
NORTH FACEザックのフックつき紐
-
メガバス スクリームXのフック交換
-
EPSON LD22W63のスタンドが固く...
-
台所用品を下げるフックが、勝...
-
やっちゃダメなのは分かるので...
-
とてつもなく魚が臭い(カレイ...
-
死んだウナギは食べれますか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
溝のない鴨居(無目?)にフッ...
-
アニメのグッズで紐みたいなの...
-
UシャックルかS字フックか
-
EPSON LD22W63のスタンドが固く...
-
ドッコの英訳
-
DbD 生存者5人をエンティティに...
-
天井から吊るときによい展示方法
-
メモリ増設でフックが折れたの...
-
キャロライナ+ミノー?
-
フックタイプの靴紐
-
マジックテープはタオルにくっ...
-
引っ掛けるやつがついているネ...
-
箱形パッケージにフック穴をあ...
-
ルーフキャリアのネットについて
-
この部品の名前がわかりません!
-
ルアー付き 魚
-
公共トイレのドアフックが高く...
-
スピナーベイト、ジグヘッドは...
-
電車のパンタグラフ
-
構造図の基礎コンクリート、鉄...
おすすめ情報