2011-03-07 78 views
2

我正在嘗試創建我自己的shell,它是Windows的shell替代品。 我認識到,通過在註冊表編輯器,在剛剛設定值:什麼是在Windows XP中創建shell替換的正確方法?

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon 

將工作在Windows 7中,但在Windows XP中,它並非如此。

如果我嘗試運行Windows資源管理器,它將顯示任務欄並將其自身作爲Windows的外殼。但在Windows 7中,它只會運行Windows資源管理器,而不會顯示其任務欄

Windows XP中的shell替換是否需要任何特定的註冊表編輯器設置?

+1

您已經顯示的註冊表位置確實如何更改當前用戶的默認shell,即使在Windows XP中也如此。我不明白你對它不起作用的解釋。你能給我們更多的細節嗎?如果您更改了默認shell,爲什麼要嘗試啓動Windows資源管理器? – 2011-03-07 10:14:49

+0

@Cody Gay 如果我的解釋不夠詳細,我很抱歉。 :)我的意思是,如果我在Windows XP中運行explorer.exe,並且explorer.exe不是默認shell,它將顯示它的任務欄。它表現得像它的默認外殼。當然,這不是我期望替換外殼的東西。但是它不會發生在Windows 7(或者再見Vista)。 我正在運行資源管理器,正在做一些文件管理的offcourse;) – swdev 2011-03-07 10:41:26

回答

4

Explorer將查看「Shell」字符串以查看它是否不存在或是!=「explorer [.exe]」,但它只在XP上的HKEY_LOCAL_MACHINE下進行檢查!

如果調用無證寄存器作爲外殼的功能之一(SetShellWindow,SetProgmanWindow,SetTaskmanWindow,RegisterShellHookWindow等),資源管理器將無法將其自身註冊爲殼,因爲只有一次過程可以在任務欄和桌面外殼。

+0

哇,我只知道!當然,我會做一個檢查。並給你結果!非常感謝 – swdev 2011-03-08 01:23:11

相關問題