Win+Dキーを押した時に最小化をさせない方法 – プログラミング – Home

Win+Dキーを押した時に最小化をさせ...
 
通知
すべてクリア

[解決済] Win+Dキーを押した時に最小化をさせない方法


ぽちこう
 ぽちこう
(@ぽちこう)
ゲスト
結合: 14年前
投稿: 5
Topic starter  

開発環境 : WinXP(SP3), VS2008 + MFC

ダイアログベースでプログラムを作成しています。
Win+Dキーを押したときに最小化をさせないようにするために、
PreTranslateMessageでWin+Dキーを押したときのメッセージを捕らえて処理しようと思っ
たのですが、
Win+Dキーを押したときに飛ばされるメッセージが何なのか分からないため処理すること
が出来ません。

どのようなメッセージが飛ばされるのか、ご存知の方はいらっしゃいますでしょうか。
また、これ以外の方法があれば教えていただけるとありがたいです。


引用未解決
トピックタグ
maru
 maru
(@maru)
ゲスト
結合: 17年前
投稿: 358
 

SPY++を使用すればどんなメッセージが飛んでくるか調査できます。


返信引用
デゴルガン
 デゴルガン
(@デゴルガン)
ゲスト
結合: 16年前
投稿: 20
 

[Win]+[D]はWindowsで用意されているホットキーです。
無効にするには、dllを使ったグローバルフックを利用しないと難しいと思います。

WH_KEYBOARD_LL フックプロシージャの WM_KEYDOWN でチェックし、
[Win]+[D]が押されていればデフォルト処理を呼ばないようにする。
([Win]キーの状態は GetKeyState で確認)
そうすればホットキーの生成をスキップできるはずです。

(他のグローバルフックでも出来るかもしれません)


返信引用
ぽちこう
 ぽちこう
(@ぽちこう)
ゲスト
結合: 14年前
投稿: 5
Topic starter  

返信が遅くなってしまい申し訳ございません。

maruさん、デゴルガンさん、返信していただき有難うございます。

Spy++を利用して[Win]+[D]押下時のメッセージを調査してみましたが、特にメッセージが
飛ばされている様子はありませんでした。
ですのでグローバルフックを利用した方法を試してみようと思います。

有難うございました。


返信引用
ryo
 ryo
(@ryo)
ゲスト
結合: 23年前
投稿: 252
 

ちょっと気になったのですが、
「WIN+Dで最小化」だけを防ぎたいのでしょうか?

たとえば、タスクバー上で右クリックしてでるメニューに
「デスクトップを表示」があります、
また、WIN7には、タスクバーの端っこにデスクトップ表示のボタンがあります。
これらの機能でも、アプリケーションは最小化(デスクトップを表示)されます。

体感ですが、WINキーを押した時点でアプリケーションは非アクティブになり
タスクバーか、OS側から「最小化」させるメッセージだけが
飛んできてるだけみたいですね


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました