如果Windows资源管理器正在运行,Dir​​ect3D应用程序可以正常运行,否则会非常慢

dar*_*mos 6 c++ windows-xp kiosk direct3d9

如果我们完全启动Windows,然后启动它,我们的Direct3D9应用程序将完美运行.但是,如果我们调整Windows的启动过程以便不运行资源管理器,并且只启动Windows和我们的应用程序,那么我们的应用程序可能会慢下来.即使空闲(通常,它接近0),CPU消耗也会达到50%.

这可以通过启动任务管理器,启动资源管理器并重新启动我们的应用程序来解决.但这是不可接受的; 我们的应用必须在没有Explorer的情

这可能是Direct3D吗?我们的应用程序是全屏,Windows版本是XP SP3,包含所有最新更新,Direct3D版本是9.0.c. 如果这不是与Direct3D相关的,我该如何调试呢?

dar*_*mos 11

解决了它.去了Control Panel->UserAccounts->Change the way users log on or off,看到"使用欢迎屏幕"被检查.

取消选中解决了它.似乎当欢迎屏幕处于活动状态时,由于它使用的分辨率与桌面不同,因此会发生冲突.我没有检查,但似乎这导致硬件加速暂时不可用,因此选择了软件渲染,从而导致CPU崩溃.