在Windows XP中创buildshellreplace的正确方法是什么?

我正在尝试创build我自己的shell,它是Windows的shell替代品。 我意识到只要在REGEDIT中设置值:

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

将在Windows 7中运行。但是,在Windows XP中,情况并非如此。

如果我尝试运行Windows资源pipe理器,它将显示任务栏并将其自身作为Windows的shell。 但在Windows 7中,它只会运行Windows资源pipe理器,而不会显示其任务栏

在Windows XP中,是否需要使用特定的registry编辑器进行shellreplace?

资源管理器会查看“Shell”字符串来查看它是否不存在,或者是!=“explorer [.exe]”,但它只在XP上的HKEY_LOCAL_MACHINE下进行检查!

如果你将其中一个未公开的寄存器称为shell函数( SetShellWindow ,SetProgmanWindow,SetTaskmanWindow,RegisterShellHookWindow等),explorer将无法将自己注册为shell,因为只有一个进程可以是任务栏和桌面shell。

您需要在HKLM更换一个密钥,在HKCU另一个密钥。 看到这个更多的信息: http : //msdn.microsoft.com/en-us/library/ms838576.aspx