应用程序窗口化运行怎么设置

题图来自Unsplash,基于CC0协议
导读
应用程序窗口化运行是指让应用程序在操作系统窗口中运行,而不是占据整个屏幕或作为无边框窗口存在。这对于多任务处理、方便访问操作系统的其他功能(如任务栏、开始菜单、系统时间等)以及避免一些全屏应用可能带来的兼容性问题或易误触屏幕的情况非常有用。
以下是一些常见的将应用程序设置为窗口化运行(或强制保持窗口化)的方法,适用于Windows和macOS(部分方法在macOS上可能效果不同):
一、 通过应用程序自身选项或快捷键
(这是首选方法,也是最常见的)
-
检查应用内置设置: 很多应用程序,特别是游戏和多媒体软件,本身就提供了窗口化模式的选项。进入游戏的设置菜单或应用程序的显示设置,查找类似“全屏模式”、“窗口模式”、“无边框窗口模式”或“窗口化”的选项,将其切换即可。
- 举例: 很多Steam游戏、Epic游戏商城游戏、Unity/Unreal引擎制作的游戏,通常在设置菜单中可以切换不同显示模式。
- 注意事项: 不是所有游戏或应用都提供此选项,有些可能只能在“全屏”和“窗口化”之间选择。有些老游戏可能外加了窗口化支持的补丁(如GameEx.exe等工具)。
-
使用快捷键: 许多应用程序支持键盘快捷键来切换显示模式。
- 常见快捷键:
Alt + Enter: 最常用于在游戏中在全屏模式和窗口模式之间切换。F11: 在某些浏览器或应用中可能用于切换全屏/窗口化模式。
- 重要提示: 这个快捷键在不同应用程序中可能不同,甚至根本没有定义。需要查阅具体应用的文档或实践查找。
- Win键 + 上箭头/方向键(Windows): 可以用窗口管理功能快速将窗口调整到某种布局,但这需要窗口已经处于窗口化状态。
- 常见快捷键:
二、 使用专业窗口化软件工具(强制窗口化/限制无边框应用)
(适用于没有自身选项的游戏或应用程序,特别是那些试图覆盖整个屏幕的应用)
- SetWindowsField: 这个工具非常强大,允许你非常精细地控制窗口的行为,例如强制窗口化、禁用窗口最小化、锁定窗口位置和大小、将窗口置底等。只需将目标游戏或应用的进程名(一般在“任务管理器 > 进程 > 右键 > 查找进程”中能看到)放入工具中指定的模块下,选择相应的功能即可强制实现窗口化。
- AltCap: 另一个常用的工具,功能与SetWindowsField类似,能够锁定窗口位置、颜色键、透明度等,有时用于创建自定义的窗口游戏界面。
- WindowedMaker或类似工具(如ScreenFlicker、AEWin,旧时代工具): 这类工具传统上用于将全屏游戏捕获并输出到窗口,但可以配置捕获全屏区域并将其作为一个窗口运行。不过,现代工具(如上述SetWindowsField)通常更直接有效。
- 重要提示: 使用此类工具前,请仔细阅读其文档和注意事项,因为不当使用可能导致窗口行为异常或游戏输入延迟。
三、 全屏应用变成窗口模式 (Win32 API 级别操作)
(一种高级且稍有风险的做法,通常用于那些没有内置窗口模式或选项不佳的应用程序)
- 发送“最大化”消息: 对于很多“伪全屏”的应用程序,其本质是一个窗口,只是通过发送最大化消息 (
SendMessage(hWnd, WM_SIZE, SIZE_MAXMIN, 0);或类似操作) 来拉伸窗口填充屏幕。你可以使用一些工具(如 AutoHotkey)来模拟这个操作作用在目标窗口上。 - 改变窗口样式: 登录到目标窗口的句柄 (
hWnd),然后修改其窗口样式,通常是移除WS_POPUPWINDOW样式 (或可能是WS_OVERLAPPEDWINDOW的一部分) 并添加WS_OVERLAPPEDWINDOW等样式,但这需要编写代码或使用需要代码支持的高级工具。- 使用注册表作用于窗口: 研究表明,可以通过修改特定应用程序Class名称的注册表键值来改变其默认窗口样式。通常在
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWindowStationWinSta0Windows或类似的路径,查找应用程序的入口类名,然后找到或创建与类名同名的键,修改WindowClass和WindowClass/WOW下的binPath值,用指向一个特定“窗口外壳”或“框架窗口”的可执行文件路径来包裹原始应用程序窗口。例如,可以使用一个简单的框架窗口程序 (frame) 来包裹应用窗口,将其外观伪装成应用窗口,并始终保持在前台或置底。 - 警告: 修改注册表是高风险操作,
binPath技术在某些情况下可能已被系统安全机制阻止,且效果可能不稳定。这种方法的效果和可用性取决于操作系统版本和具体应用程序,建议备份注册表并谨慎尝试。
- 使用注册表作用于窗口: 研究表明,可以通过修改特定应用程序Class名称的注册表键值来改变其默认窗口样式。通常在
四、 Windowed Overlays/全屏模式下的覆盖窗口 (直播软件等)
(特定类型的“窗口化”,指的是在全屏游戏时显示的小窗口提示或信息,通常不是你想要的应用完全脱离全屏的窗口化方式)
*(如OBS Studio、Discord Voice Chat Overlay等)
五、 无边框窗口化设置方法
(有时窗口化运行时,某些应用仍可能带有任务栏阴影或窗口边框)
- 通过属性: 右键点击应用窗口,选择“属性” -> “布局”,通常有一项“无边框”或类似选项,勾选它可以移除窗口的边框和标题栏,只留下标题栏(如果未被移除)。
- 设置窗口遮蔽:
- 显卡控制面板: 某些显卡驱动(NVIDIA控制面板或AMD Radeon设置)提供了“窗口化模式”或“全屏无边框”等选项,但这不一定适用于所有应用,且效果可能不同。
重要提示:
- 研究具体应用: 不同应用程序的方法差异很大,首选检查其自身设置。
- 备份: 在使用注册表编辑或其他涉及系统设置的方法之前,请务必备份注册表或系统状态。
- 兼容性: 强制窗口化可能会影响某些应用的性能或键盘快捷键,因为某些按键组合(如Alt+Tab, Alt+F4, Win键组合)在窗口模式下可能与全屏略有不同。
选择最适合你需求和应用程序的方法试试看吧。
© 版权声明
本文由盾科技原创,版权归 盾科技所有,未经允许禁止任何形式的转载。转载请联系candieraddenipc92@gmail.com