Shell 定制设计的外壳不';我不能在Windows7上工作

Shell 定制设计的外壳不';我不能在Windows7上工作,shell,windows-7,replace,Shell,Windows 7,Replace,我们有一个服务器/客户端网吧管理应用程序,它过去在Windows XP和Vista上运行良好,但现在无法在Windows 7上运行 该客户端应该被“锁定”在网吧的客户端PC上,这意味着它通过更改注册表项取代了Windows资源管理器 “HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell” 指向客户端应用程序的EXE文件的路径 这在Windows XP上运行得很好,现在在Windows

我们有一个服务器/客户端网吧管理应用程序,它过去在Windows XP和Vista上运行良好,但现在无法在Windows 7上运行

该客户端应该被“锁定”在网吧的客户端PC上,这意味着它通过更改注册表项取代了Windows资源管理器

“HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell”

指向客户端应用程序的EXE文件的路径

这在Windows XP上运行得很好,现在在Windows 7上,既不运行Explorer.exe也不运行Client.exe,只显示一个空白的蓝色屏幕

我们认为它可能与UAC有关,所以我们禁用了它,没有运气。 当我们设法通过另一台计算机在客户端PC上启动Explorer.exe,并使用Explorer窗口打开Client.exe时,客户端启动正常

(请注意,运行Explorer.exe不会启动Windows Shell,而只是打开了一个Explorer窗口,因为注册表项指向Client.exe,除非注册表项指向Explorer.exe,否则Shell不会启动)


好主意,各位?XP和7在这方面有什么大的区别吗?

修复了它。希望有人觉得这有用:

在64位Windows上运行的32位应用程序无法访问Windows注册表的某些区域。访问该部分的请求被路由到其他密钥。这就是为什么我们的应用程序无法锁定Windows7(它是64位的Windows)。 在Visual Studio中将Client.exe从x86更改为“任意CPU”修复了该问题

但是,仍然需要禁用UAC以允许客户端工作