Skip to content

疑似小狼毫后台进程WeaselServer.exe会导致arc raiders游戏闪退崩溃 #1728

@DAIORANGE

Description

@DAIORANGE

上报前检查

  • 我确认问题尚未在 issue 中被报告

  • 我的小狼毫版本来自 rime/weasel 最新构建

  • 我确认使用了最新 CI 构建版本

操作系统信息

  • OS:Windows 11 25H2 26200.6899

  • 小狼毫版本:0.17.4.0

CPU: AMD Ryzen 7 9800X3D
主板: 华硕 ROG CROSSHAIR X870E HERO
内存: 64 GB DDR5 4800 MHz (32 GB × 2) 未开超频
显卡: NVIDIA GeForce RTX 5090 (驱动 581.80)

问题描述

在运行 Unreal Engine 5 游戏 ARC Raiders(Steam 平台)时,游戏会在运行几分钟后崩溃,错误为:

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION (reading address 0x10)

经过chatgpt分析游戏崩溃报告显示:崩溃位置在 D3D12 渲染线程(Frame Generation / Swapchain Hook)。

我中途进行了很多其他尝试 如使用ddu重装显卡驱动 以及重装dx运行库进行修复 与清除reshade缓存 更新bios等操作 均无法彻底解决问题

经过多次排查,我发现关闭 WeaselServer.exe(通过启动项禁用小狼毫后台进程 重启电脑开启游戏)后,游戏完全不再闪退。

重新启动 WeaselServer 后,游戏数分钟内必然再次崩溃,问题可 100% 复现。其中进行操作会加快崩溃的发生。

重现步骤

启动 Weasel 输入法(WeaselServer.exe 在后台运行)

启动 ARC Raiders(Unreal Engine 5.3,D3D12 模式(注意这里是gpt生成的 可能是它通过阅读游戏崩溃报告获取的版本和模式 但我不太确定))

进入靶场或多人地图加载阶段

游戏在启动后的数分钟内会崩溃。
通常在系统刚开机后第一次运行游戏时,崩溃前的等待时间较长;
但如果不使用 AMD Adrenalin 在图形设置中 重置 Shader Cache,直接重新启动游戏,则会在很短时间内再次闪退。

进一步测试发现:
如果在第一次发生崩溃后,第二次游戏启动前手动结束 WeaselServer.exe 进程,游戏仍会在数分钟后崩溃;
只有在禁用 WeaselServer.exe 的开机自启,并在重启系统后不再运行该进程的情况下,才能稳定游玩且不再闪退。

期望行为

Weasel 在后台运行时不应影响 DirectX / Vulkan / Unreal Engine 程序稳定性。

补充说明

我是在平台交流时看到有人提到 QQ 可能会导致游戏崩溃后,想到尝试排查启动项的。
我采用了控制变量的方式进行测试:

第一次,我仅在开机启动项中禁用了 QQ,但保留了小狼毫输入法(Rime),进入游戏后依旧出现崩溃;
第二次,在禁用 QQ 的基础上,我同时禁用了小狼毫输入法,然后进行游戏,结果在昨天连续游玩了六到七个小时,完全没有再发生闪退。

我对底层技术不太了解,也无法确定是不是 QQ 和小狼毫的某种复合干扰造成了问题。
但我隐约感觉这两类程序可能会触发虚幻引擎 5 内部某种与 Shader Cache(着色器缓存)相关的累计错误。
这也许能解释为什么网上很多教程都建议通过重置 Shader Cache或删除以下两个文件来尝试修复:%LOCALAPPDATA%\PioneerGame\Saved:

  • D3DDriverByteCodeBlob_V4318_D11141_S1100551256_R161.ushaderprecache
  • PioneerGame_PCD3D_SM5.upipelinecache

该问题仅在游戏默认模式 Unreal Engine 5.x(不太确定是不是5.3) + DX12 (游戏默认)模式下出现。

其他程序(包括使用 -DX11启动项的本游戏、Unity、Chrome)均不受影响。

chatgpt怀疑 Weasel 在 hook 输入法或窗口层时与 DXGI 交换链(Swapchain)产生冲突。

用户文件

如需进一步分析,我可提供:

%AppData%\Rime 下的用户配置文件;

%LocalAppData%\PioneerGame\Saved\Crashes 下的完整崩溃日志。

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions