關於Windows外殼(Windows Shell)

zhaotianff發表於2024-11-11

在前面的文章中,我介紹過如何替換Windows Shell,將桌面替換為自己的程式。

但是這麼做會有個問題,就是桌面環境未被初始化,即使建立了explorer.exe程序,桌面也不會出現。

這裡蒐集了一些關於WInlogon,LogonUI和Userinit的一些理論知識,有興趣的小夥伴可以瞭解一下。

Winlogon

Winlogon.exe位於%SystemRoot%\System32\Winlogon.exe

這個程式的描述如下圖所示。

這個程式實際負責以下功能

1、使用者登入

2、使用者登出

3、處理Ctrl+Atl+Del按鍵

這裡值得注意的是,這三個按鍵是無法被使用者層的應用程式所攔截。

在過去很長一段時間裡,我都在尋找攔截這三個按鍵的方式,但都以失敗告終。

也是最近才知道,只有在核心層,例如開發鍵盤過濾驅動,才能做到真正的攔截。

但是在應用層,我們還是有幾種辦法可以限制Ctrl+Alt+Del

方法1

透過組策略,或者注意表,禁用Ctrl+Alt+Del

方法2

掛起Winlogon.exe,使之無法響應鍵盤按鍵。

計算機\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

相關文章