在 XP 中,我可以转到文本模式在 cmd.exe 中使用alt
+ enter
。此时它会进入全屏模式(无窗口,无图形 - 它会将光栅字体上传到硬件)。在 Windows 7 中不再起作用。文本模式怎么了?我可以通过其他方式在 Windows 7 中恢复它吗?
如果不能,那么令人哀悼的是,是哪些 API 变化导致这变得不可能,以及它是什么时候发布的?
编辑我读了为什么 Windows 命令提示符窗口不能最大化到全屏大小?但这个问题是关于最大化图形模式安慰窗户。我的问题不同,因为我问的是不同的文本模式(不同的硬件模式)。
答案1
我认为区别在于 Vista 及更高版本引入的 WDDM(Windows 显示驱动程序模型)驱动程序不支持全屏,而 XP 显示驱动程序则支持。
答案2
http://www.tomshardware.co.uk/forum/17890-63-full-screen-command-prompt-windows#第一个答案:dosbox ...这将使您的显示器处于文本模式,并留下所有图形模式,我自己在 windows 7 x64 SP1 中测试过,我安装并启动它,然后按 alt+enter
另外,谢谢你关于 Vista/Windows 7 不支持全屏的回答...真是一派胡言
PS 使用它需要您自担风险,它还更改为 Windows 7 基本主题(无 Aero),我想这意味着“驱动程序中没有全屏”......哦,好吧......Windows Aero 不是驱动程序!......退出 Dosbox 主题后仍然恢复正常
所以再说一遍(是的,这句废话激怒了我),只要你可以在驱动程序处于活动状态时更改分辨率,文本模式就只是另一种分辨率
答案3
虽然 Windows 7 无法切换到文本模式。但这并不意味着图形模式无法实现类似的效果。您需要执行以下操作:
- 消失窗口边框
- 最大化窗口
- 更改字体
- 更改屏幕缓冲区大小和窗口缓冲区大小(行上的字符数和行数)
- 隐藏任务栏并根据需要执行其他最大化相关操作
- 用黑色填充屏幕边框上无法容纳任何字符的几个奇数像素
- 挂钩(或以某种方式拦截)键盘快捷键
我创建了一个程序,它可以完成所有这些操作(主要是通过调用 winapi 函数)。但它尚未在其他系统上测试过,而且可能存在错误,所以我还不想发布它。
但我确认这是可能的。(使控制台看起来几乎处于文本模式。)
答案4
conhost(Windows 默认终端,在 Vista 中引入并在 Windows 7 中改进)根本不支持全屏模式。
如果您确实需要,则必须寻找其他终端。