我有一款老游戏(Atomic Bomberman / Bomberman95)——顺便说一句,它没有可用的/完全相同的克隆——并且必须在没有运行 DWM 的情况下运行它。在 Windows 7 中,我会关闭资源管理器并运行游戏(批处理文件)。
但同样的批处理文件在 Windows 8 中不起作用。我尝试关闭 DWM,但它不断返回。在 Win8 中关闭 explorer 不会关闭 DWM。
“兼容性”选项卡中的“禁用桌面组合”选项已消失。
我该如何解决这个问题?
我尝试以 8 位 256 色彩模式以管理员身份运行 .exe 并终止资源管理器,但游戏屏幕是黑色的。
我也没有在 services.msc 应用程序中看到桌面窗口管理器,所以我无法在那里禁用它。
另外,我还读过这篇文章:
https://stackoverflow.com/questions/13831997/is-dwmiscompositionenabled-still-of-use-in-windows-8
但这仅说明旧的基本主题在 Windows 8 中可用,而没有说明如何暂时禁用 DWM。
答案1
微软表示,Windows 8 中的桌面窗口管理器始终处于打开状态,但事实并非如此。Windows PE 4.0(用于安装、部署和恢复 Windows 操作系统的 Windows 8 的小版本)和 Windows Server 2012 Server Core 没有 DWM。实际上,DWM 处于打开状态是因为 Metro 用户界面使用 DirectComposition API 来呈现其界面,因此如果您禁用 DWM,Metro 体验(如“开始屏幕”和登录屏幕)将变黑,您什么都看不到。始终打开 DWM 由 Winlogon.exe 强制执行,它会启动 DWM.exe 进程,因此如果您终止 DWM.exe,Winlogon 将立即重新启动 DWM.exe 进程。
以下是阻止 Winlogon.exe 再次启动 DWM 进程的解决方案:
- 使用 sysinternals.com 的 PSSuspend.exe 或 Process Explorer
- 按照 PSSuspend 的命令行说明进行操作
- 如果您使用的是 GUI Process Explorer,请右键单击 winlogon.exe 进程,然后单击“暂停”。然后,终止 DWM.exe。
警告:不要错误地暂停 DWM.exe,否则您将被锁定并需要重新启动(解释:它处理来自鼠标/键盘的所有输入,并且如果暂停,winlogon.exe 将不会检测到它是否应该重新启动,也不会释放输入以在非 DWM 模式下使用)。
答案2
您无法在 Windows 8 中禁用 DWM。它始终在运行!这是新 Windows Store Apps/“Metro” Shell 所必需的:
在 Windows 8 中,桌面窗口管理器 (DWM) 始终处于开启状态和最终用户和应用程序无法禁用。与 Windows 7 一样,DWM 用于组合桌面。除了 Windows 7 中启用的体验外,现在 DWM 桌面组合还支持所有主题的桌面组合、立体 3D 支持以及 Windows Store 应用体验的管理、分离和保护。
答案3
启用自动登录或控制台登录。
执行以下 reg 文件:
Windows 注册表编辑器版本 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\图像文件执行选项\dwm.exe]
“调试器”=“%SystemRoot%\ System32 \ rundll32.exe”
重启。