簡體   English   中英

如何檢測用戶是否按了Ctrl-Alt-Del或Alt-Tab,以便可以最小化程序?

[英]How to detect if a user pressed Ctrl-Alt-Del or Alt-Tab so that I may minimize my program?

我正在使用DirectX 11用C ++編寫程序,我希望它能使用戶每次按Ctrl-Alt-Del或Alt-Tab時程序最小化。

讓窗口本身最小化是容易的部分,因為我要做的就是調用此函數:

ShowWindow(hWnd, SW_MINIMIZE);

我停留的部分是讓它檢測何時輸入了這兩個特定按鍵中的任何一個,以便在發生這些事件之一時可以調用該函數。

任何幫助將不勝感激,如果您需要我澄清一些問題,請告訴我。

熟悉Windows內核的人可以在這里用沉重的靴子踩踏並糾正我,但是據我所知,Ctrl-Alt-Delete是如此的系統,它是“大型系統”。 原因是,如果程序可以鎖定它,那么當某個白痴認為彈出“您確定嗎?”是個好主意時,您最終將死於桌面。 當用戶意識到他的計算機已經死了時,出現一個消息框。

作為軟件開發人員,我們應該遵循一些准則,並且試圖改變操作系統的行為(無論我們的意圖有多好),總會流下眼淚。

我建議您不要嘗試這樣做(如果確實有可能,我從未嘗試過-坦率地說),然后開始考慮可以做的更重要的事情。 如果有內存可用,並且在運行DirectX應用程序時用戶確實按了Ctrl-Alt-Delete,則將丟失表面/設備的上下文(假設您是全屏顯示)。

正常退出,或者如果您可以恢復,請退出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM