2012-03-17 201 views
4

我正在開發一個應用程序(用C#編寫),它有一個在KIOSK模式下運行的應用程序。我在這裏只是一個挑戰,這是禁用Ctrl + 替代 + 刪除組合事件。在windows7上禁用Ctrl + Alt + Del組合

在以往類似的帖子中沒有正確答案。請讓我知道正確的行動。 考慮到,我的代碼使用註冊表項來禁用/啓用選項,如果您知道任何註冊表項,它將會更有幫助。

+0

可能的重複http://stackoverflow.com/questions/6408443/how-can-i-disable-ctrl-alt-del-in-windows-7-programmatically – 2012-03-17 16:18:37

+0

http://stackoverflow.com/questions/4234242/disable-ctrl-alt-del-and-shutdown-for-kiosk – 2012-03-17 16:18:53

+0

如果它處於Kiosk模式,你不能確保提供的硬件缺少一個或所有的Ctrl,Alt或Del鍵(假設有一個鍵盤根本沒有) – 2012-03-17 16:19:20

回答

9

CTRL + ALT + DEL是Windows NT(及其衍生工具,如Win7)的secure attention sequence。這是保證獲得操作系統注意力的一個關鍵組合。 SAS的全部重點在於它不能被用戶程序攔截或停止。

它解決的一個安全問題是虛假登錄屏幕:考慮一個與正常Windows登錄屏幕完全相同的屏幕。沒有辦法通過查看它來證明它是假的。但是,如果您習慣於在登錄前始終按下CTRL + ALT + DEL(有一個選項可以始終要求它用於合法屏幕),則在錯誤的登錄屏幕上按SAS將啓動任務管理器或安全關注屏幕(註銷,更改密碼等選項)。真正的登錄屏幕不會這樣做;它只是呆在屏幕上。只要操作系統本身沒有被替換或泄露,CTRL + ALT + DEL將會保護您免受虛假登錄屏幕的侵害。如果一個用戶程序可以攔截SAS,那它就沒有任何價值。

SAS從一開始就被燒入Windows NT設計(它是在1993年的第一個版本中),因此避開它並不容易。我確定有鍵盤過濾器驅動程序或者某些東西來攔截爲自助服務機使用而設計的順序。

+0

Deat Smith,我的觀點不是登錄屏幕。在Windows7運行時,如果你按Ctrl + Alt + Del,你會看到一個屏幕,允許你登錄,鎖定計算機,更改密碼等....我想禁用此選項 – mrArmg 2012-03-18 06:35:52

+1

如果有人正在播種假登錄屏幕,然後按CTRL + ALT + DEL,它會彈出該註銷,鎖定等屏幕,而不是停留在那裏。這樣你就會知道假屏幕是假的。如果一個程序可以禁止發生這種情況,那麼您將無法從真實的登錄屏幕中看到虛假的登錄屏幕。 – 2012-03-18 20:44:11

2

無法捕獲Ctrl + Alt + Del,這在所有Windows系統中都是如此設計的。這是一個安全問題,如果用戶點擊Ctrl + Alt + Del,他或她應該確定它是操作系統,而不是一些響應它的應用程序(可能是密碼捕捉木馬)。

我想捕捉Ctrl + Alt + Del你需要編寫某種設備驅動程序。

編輯:另見This answer。我沒有嘗試,但問題很相似。

0

可以選取Ctrl + Alt + Delete組合,但不能禁用它。我試圖通過SetWindowsHookExWH_KEYBOARD_LL來禁用它,並且當按下Ctrl + Alt + Delete時可以成功獲得通知,但對此無能爲力。

-1

你需要做一些的P/Invoke,在user32.dll中,有一個名爲SystemParametersInfo方法,檢查出這些資源獲取更多信息

http://pinvoke.net/search.aspx?搜索= SystemParametersInfo &命名空間= [全部]

http://msdn.microsoft.com/en-us/library/windows/desktop/ms724947%28v=vs.85%29.aspx

我做了類似的長東西而回,但不再有代碼,雖然我沒有找到這個(這是在VB6),但它不應該太難以理解並轉化爲想法。NET

http://www.developerfusion.com/code/1021/how-to-disable-ctrlaltdel/

+0

此方法僅適用於Win9x,OP適用於Windows 7 – 2012-03-17 22:11:04

1

雖然它是那種可能,這不是一件容易的事,而不是東西,可以在C#來完成。 This Article將向您展示如何使用組策略編輯器禁用Ctrl + Alt + Delete。儘管如此,要永久禁用組合,您需要編寫自己的鍵盤驅動程序或編寫自己的GINA存根(圖形標識和身份驗證)。

+0

組策略將更改註冊表項,我相信這一點。但我無法找到正確的鑰匙來處理。 – mrArmg 2012-03-18 06:40:07

+0

HKCU \ SOFTWARE \ 微軟\ 的Windows \ CURRENTVERSION \ 政策\ SYSTEM \ DisableTaskMgr = DWORD:1 – Icemanind 2012-03-18 21:15:09

相關問題