传奇世界单机版启动报Cannot focus a disabled or invisible window错误的完整排查与

来源: 作者: 点击:
这个英文提示直译是"无法将焦点设置到一个被禁用或不可见的窗口上",在传奇世界/传奇单机版中出现,通常是引擎控制器(GameCenter.exe)试图激活一个还没加载完就被关闭、最小化到托盘失败、或被系统屏蔽的黑框窗口(DBServer/LoginGate/M2Server/RunGate等)。按以下顺序排查基本都能解决。

一、正确关闭并重启引擎(最常见原因)

90%的情况是手动关掉了某个网关黑框(如DBServer.exe或RunGate.exe),导致M2Server想聚焦该窗口时报错。正确做法:
1. 点击引擎控制器上的"停止游戏服务器"或双击 StopServer.bat/停止引擎.exe,等所有黑框消失。
2. 若已报错弹窗,先点确定,然后在任务管理器中结束所有 MirServer.exe、DBServer.exe、LoginGate.exe、SelGate.exe、RunGate.exe、M2Server.exe 进程,确保不留残留。
3. 右键 GameCenter.exe(服务器控制器)→ 以管理员身份运行 → 点"启动游戏服务器",等所有黑框窗口完全弹出,全部最小化不要关闭。
4. 确认M2Server窗口底部状态栏显示"服务器已启动"或"游戏中"后再开登录器。

二、设置管理员权限与兼容模式

Win10/Win11系统会限制老Delphi编写的引擎窗口获取焦点,导致窗口被系统标记为Disabled从而触发此报错:
1. 找到服务端根目录下的 GameCenter.exe(有的叫 启动引擎.exe 或 控制器.exe)。
2. 右键→属性→兼容性,勾选"以兼容模式运行这个程序",选 Windows XP (Service Pack 3) 或 Windows 7。
3. 同时勾选"以管理员身份运行此程序"和"禁用全屏优化"。
4. 点应用确定,重新按第一步启动。

三、检查路径不含中文与空格

服务端(MirServer文件夹)必须放在纯英文短路径,推荐直接放磁盘根目录:
• ✅ 正确:D:\MirServer\ 或 E:\Woool\

- ❌ 错误:D:\游戏\传奇世界单机版\ 或 D:\Legend World\
路径含中文、全角字符或过长空格会导致部分网关窗口初始化失败变成Invisible状态,进而触发Cannot focus报错。客户端(Data文件夹所在目录)同理建议放纯英文路径。

四、杀毒软件误删与文件缺失

360、火绒、Windows Defender 常把网关程序(RunGate.exe、SelGate.exe等)当可疑文件隔离,导致启动时光标要聚焦那个已不存在的窗口:
1. 暂时关闭杀毒软件或将整个 MirServer 目录加入白名单/信任区。
2. 检查 MirServer\RunGate\RunGate.exe、MirServer\SelGate\SelGate.exe、MirServer\DBServer\DBServer.exe 是否存在,若缺失重新解压完整服务端覆盖。
3. 确认 DBC2000 已正确安装且新建了名为 HeroDB 的数据库别名指向 MirServer\Mud2\DB。

五、客户端侧出现此报错(登录器弹窗)

若是双击登录器(mir.exe/wowmir.exe)进入游戏时弹 Cannot focus a disabled or invisible window:
1. 找到客户端目录下的 Config.exe 或 游戏设置.exe,把显示模式改为"窗口化800×600或1024×768"再试,避免隐藏模式。
2. 登录器同样右键→属性→兼容性→以管理员身份运行+禁用全屏优化。
3. 确认登录器列表IP填的是 127.0.0.1,与服务端 !Setup.txt 中 IP1=127.0.0.1 一致。

六、仍无法解决时的终极处理

1. 把整个 MirServer 文件夹剪切到另一个磁盘根目录(如从C盘移到D:\MirServer),重新设置管理员运行。
2. 安装或修复 VC++ 2005/2008/2010 运行库和 DirectX 9.0c,老引擎依赖这些组件创建窗口。
3. 若当前引擎包反复报此错且其他版本正常,考虑换一套同引擎(Hero/GOM/GEE对应版本)的服务端重新配置,个别精简版引擎本身有窗口焦点Bug无法根治。

按以上步骤操作,尤其是"不关黑框+管理员运行+纯英文路径"三条做到位后该报错通常会消失。