windows 11 下打开war3报错 您所在的位置:网站首页 windows11自带输入法顿号打不出来 windows 11 下打开war3报错

windows 11 下打开war3报错

2023-05-24 22:10| 来源: 网络整理| 查看: 265

五一的时候,突然想打dota 1. 但扫兴的是, 每次一打开游戏war3.exe,就会弹出某内存地址无法读取的错误提示窗,然后游戏就自动退出了。

很明显,这是兼容性问题。我刚刚更换了笔记本电脑,而且安装的是 win 11 操作系统。 我怀疑是不是win11不支持war3。但去论坛或者直播间问了一下,有很多人能够使用win11正常玩 dota, 说明系统本身肯定是兼容的。(这里非常敬佩微软的工程能力,一开始玩war3时,win7都还没普及呢,现在二十年过去了,win11居然还能支持那么古老的游戏。)

那么,究竟是什么问题呢?

war3文件夹下,有一个Errors文件夹,一猜就知道,这是存储程序错误日志的地方。打开之后,能看到异常出现时的调用栈如下:

Stack Trace (Manual) ---------------------------------------- Address Frame Logical addr Module 76988F38 0019DFDC 0001:00057F38 C:\Windows\System32\MSCTF.dll 76988317 0019DFF0 0001:00057317 C:\Windows\System32\MSCTF.dll 6DABA471 0019E008 0001:00089471 C:\Windows\SYSTEM32\textinputframework.dll 76960046 0019E050 0001:0002F046 C:\Windows\System32\MSCTF.dll 7695380C 0019E0A0 0001:0002280C C:\Windows\System32\MSCTF.dll 769D84B5 0019E0B0 0001:000A74B5 C:\Windows\System32\MSCTF.dll ...

textinputframework 一看就知道跟文本输入有关, MSCTF 经过一番检索,发现是 Microsoft COM Text Services Framework Server DLL的意思。其功能就是为第三方应用提供文本输入服务。

这二者一结合,兼容性的源头就能够猜得到了 —— “输入法”。war3需要调用系统的输入法,但是win11自带的输入法兼容性出现了问题,所以出现了程序奔溃。这个猜测很合理,怎么验证呢?

打开了win11自带的微软拼音输入法设置,惊喜的发现的确有一个兼容性选项,赶紧打开。

但遗憾的是,问题依旧。难道是前面的推理错了?

我继续尝试,去网上下载了某狗输入法。安装后,切换到搜狗输入法,然后再双击war3.exe.

游戏竟然恢复了!!! 看来自己的推理没有错。

但是,win11自带的微软拼音输入法深得我心,我并不想使用那个天天弹窗的输入法。于是,我又卸载了某狗,恢复了微软拼音输入法。

但惊喜的是,游戏仍然可以正常打开! 这说明了什么呢?

我观察到,游戏正常后,注册表多出来一些数据。这说明,启动成功后,war3在注册表内记录了某些配置,后面启动时,就会直接读取这些配置,因此不会再次崩溃。 我赶紧把这些注册表导出,以后再安装游戏时,直接导入这个注册表应该就能行。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有