[Bug] 小狼毫启动即崩溃 + 设置界面完全无法打开(DLL 版本冲突 / 残留文件问题)+ 解決方案
上报前请检查
操作系统信息
- OS 详细版本: Windows 11 25H2
- 小狼毫版本:
- 初次安装:官方 Weasel 0.17.4(从 rime/weasel 下载)
- 后续尝试:多个 GitHub 26.3最新版本,17.0
描述遇到的问题
启动即崩溃 + 设置界面完全无法打开
-
核心问题:小狼毫安装后,无论是刚装完还是尝试部署,程序(WeaselDeployer.exe / WeaselServer.exe)都会立即崩溃,进入「启动 → 闪崩 → 自动重启 → 再崩溃」的死循环。
-
衍生问题:
- 设置界面无法打开:右键托盘图标或通过开始菜单打开「输入法设置」等界面,只要不是跳转浏览器或打开文件夹的操作,都无法正常弹出界面。
- 配置界面无响应:点击任何非浏览器/非资源管理器的选项(如“用户词典管理”、“同步”等),均无任何窗口弹出,疑似进程启动即崩溃。
- 浏览器跳转正常:点击“使用指南”、“获取更多输入方案”等会打开网页的按钮功能正常。
- 打开文件夹正常:点击“打开用户文件夹”、“打开程序文件夹”等会弹出资源管理器的功能正常。
-
崩溃证据:
- 在
C:\Users\QWQ\AppData\Local\Temp\rime.weasel 目录下,1 小时内产生了 73 个崩溃日志文件。
- 所有日志均在以下位置截断:
I20260523 21:48:33.189688 3272 modules.cc:96] registering components from module 'lua'.
- Windows 事件查看器错误:
错误应用程序名称: WeaselDeployer.exe
异常代码: 0xc0000409(安全检查失败 / 栈缓冲区溢出)
复现步骤
- 从 rime/weasel 官方下载 Weasel 0.17.4 安装包
- 安装时将用户文件夹设置到非系统盘(本例:
E:\输入法)
- 安装完成后,尝试打开“输入法设置”界面 → 无反应
- 打开任务管理器观察 →
WeaselDeployer.exe 或 WeaselServer.exe 闪退
- 查看 Temp 目录 → 发现大量崩溃日志
- 尝试从 GitHub 下载其他版本(CI 构建)覆盖安装 → 问题依旧
- 尝试运行
WeaselSetup.exe 重新部署 → 同样立即崩溃
预期行为
截图 / 日志
崩溃日志截断示例:
Log file created at: 2026/05/23 21:43:48
Running on machine: DESKTOP-9D3L7SO
Running duration (h:mm:ss): 0:00:00
Log line format: [IWEF]yyyymmdd hh:mm:ss.uuuuuu threadid file:line] msg
I20260523 21:43:48.752452 18540 core_module.cc:20] registering core components.
I20260523 21:43:48.753071 18540 registry.cc:14] registering component: config_builder
I20260523 21:43:48.753076 18540 registry.cc:14] registering component: config
I20260523 21:43:48.753078 18540 registry.cc:14] registering component: schema
I20260523 21:43:48.753081 18540 registry.cc:14] registering component: user_config
I20260523 21:43:48.753083 18540 dict_module.cc:25] registering components from module 'dict'.
I20260523 21:43:48.753086 18540 registry.cc:14] registering component: tabledb
I20260523 21:43:48.753090 18540 registry.cc:14] registering component: stabledb
I20260523 21:43:48.753092 18540 registry.cc:14] registering component: plain_userdb
I20260523 21:43:48.753100 18540 registry.cc:14] registering component: userdb
I20260523 21:43:48.753103 18540 registry.cc:14] registering component: corrector
I20260523 21:43:48.753107 18540 registry.cc:14] registering component: dictionary
I20260523 21:43:48.753110 18540 registry.cc:14] registering component: reverse_lookup_dictionary
I20260523 21:43:48.753114 18540 registry.cc:14] registering component: user_dictionary
I20260523 21:43:48.753117 18540 registry.cc:14] registering component: userdb_recovery_task
I20260523 21:43:48.753121 18540 gears_module.cc:42] registering components from module 'gears'.
I20260523 21:43:48.753123 18540 registry.cc:14] registering component: ascii_composer
I20260523 21:43:48.753125 18540 registry.cc:14] registering component: chord_composer
I20260523 21:43:48.753126 18540 registry.cc:14] registering component: express_editor
I20260523 21:43:48.753128 18540 registry.cc:14] registering component: fluid_editor
I20260523 21:43:48.753130 18540 registry.cc:14] registering component: fluency_editor
I20260523 21:43:48.753131 18540 registry.cc:14] registering component: key_binder
I20260523 21:43:48.753133 18540 registry.cc:14] registering component: navigator
I20260523 21:43:48.753135 18540 registry.cc:14] registering component: punctuator
I20260523 21:43:48.753137 18540 registry.cc:14] registering component: recognizer
I20260523 21:43:48.753138 18540 registry.cc:14] registering component: selector
I20260523 21:43:48.753140 18540 registry.cc:14] registering component: speller
I20260523 21:43:48.753142 18540 registry.cc:14] registering component: shape_processor
I20260523 21:43:48.753143 18540 registry.cc:14] registering component: abc_segmentor
I20260523 21:43:48.753145 18540 registry.cc:14] registering component: affix_segmentor
I20260523 21:43:48.753147 18540 registry.cc:14] registering component: ascii_segmentor
I20260523 21:43:48.753149 18540 registry.cc:14] registering component: matcher
I20260523 21:43:48.753151 18540 registry.cc:14] registering component: punct_segmentor
I20260523 21:43:48.753152 18540 registry.cc:14] registering component: fallback_segmentor
I20260523 21:43:48.753154 18540 registry.cc:14] registering component: echo_translator
I20260523 21:43:48.753156 18540 registry.cc:14] registering component: punct_translator
I20260523 21:43:48.753157 18540 registry.cc:14] registering component: table_translator
I20260523 21:43:48.753159 18540 registry.cc:14] registering component: script_translator
I20260523 21:43:48.753161 18540 registry.cc:14] registering component: r10n_translator
I20260523 21:43:48.753164 18540 registry.cc:14] registering component: reverse_lookup_translator
I20260523 21:43:48.753165 18540 registry.cc:14] registering component: schema_list_translator
I20260523 21:43:48.753167 18540 registry.cc:14] registering component: switch_translator
I20260523 21:43:48.753169 18540 registry.cc:14] registering component: history_translator
I20260523 21:43:48.753172 18540 registry.cc:14] registering component: simplifier
I20260523 21:43:48.753174 18540 registry.cc:14] registering component: uniquifier
I20260523 21:43:48.753176 18540 registry.cc:14] registering component: charset_filter
I20260523 21:43:48.753178 18540 registry.cc:14] registering component: cjk_minifier
I20260523 21:43:48.753179 18540 registry.cc:14] registering component: reverse_lookup_filter
I20260523 21:43:48.753181 18540 registry.cc:14] registering component: single_char_filter
I20260523 21:43:48.753204 18540 registry.cc:14] registering component: shape_formatter
I20260523 21:43:48.753207 18540 modules.cc:96] registering components from module 'lua'.
Windows 事件查看器:
完整日志文件因数量过多(73个)(其實已經刪除乾淨了)
排查过程(AI 辅助 + Gemini CLI 分析)
🙏 写在前面:本人技术能力有限,以下排查过程是在 AI(Gemini CLI)辅助分析下完成的。如果分析有误或表述不专业,还请各位大佬见谅 🙏
使用的 AI 工具:Gemini CLI(Google 官方命令行 AI 工具),用于分析崩溃日志、比对新旧版本差异、梳理解决步骤。
排查步骤记录:
-
日志分析(Gemini CLI 辅助):
- 让 AI 对比多个崩溃日志文件,发现所有日志均在
module 'lua' 注册处截断
- AI 指出:问题大概率出在 Lua 模块初始化阶段
-
AI 就是瞎分析我感覺根本沒有這個問題:版本冲突定位(Gemini CLI 辅助):
- 检查
C:\Program Files\Rime 下的 DLL 文件:
rime.dll → 1.16.1(2026/01/20)
weasel.dll → 0.17.4(2026/03/06)
- AI 指出:核心库版本(1.16.1)与主程序版本(0.17.4)不匹配,这通常是手动混装不同版本导致的典型冲突
-
残留检测(手动 + AI 辅助):
- 尝试多次卸载重装,问题依旧
- AI 建议检查:注册表、用户目录残留、Temp 临时文件
- 发现:
- 注册表中
HKEY_CURRENT_USER\Software\Rime 仍有残留项
- 自带的
uninstall.exe 无法完全清除以上内容
-
跨版本测试(手动):
- 从官方下载原始 0.17.4 → 崩溃
- 0.17.0,26 mar beat版本同上
- AI 推测:可能是某次手动替换 DLL 或残留配置文件导致,并非特定版本问题
-
最终定位(Gemini CLI 辅助归纳):
- 根本原因 = DLL 版本冲突 + 卸载残留(注册表 + 用户目录损坏文件 + Temp 日志)
- 单纯覆盖安装或自带卸载无法解决,需要 彻底手动清理
解决方案(经过验证)
將一下這段提示詞餵給AI
卸載小狼毫輸入法"C:\Program Files\Rime\weasel-0.17.4\uninstall.exe"運行這個程序,但是呢這個程序清理不乾淨我需要深度清潔包括配置文件和文件夾,用戶文件不需要保留。使用命令行全部刪除乾淨。
其他补充说明(AI分析)
- 关于 DLL 版本:本案中的
rime.dll(1.16.1)与 weasel.dll(0.17.4)版本不匹配是崩溃的根本原因之一。建议开发组考虑在安装/升级时增加 DLL 版本一致性检查,避免因混装导致此类问题。
- 关于卸载残留:自带卸载程序未清理注册表项和用户目录下的损坏文件,建议改进卸载脚本,增加清理选项。
- 关于错误提示:目前崩溃是静默闪崩,无任何错误弹窗,导致用户难以定位问题。建议增加至少一个最小化的错误提示框。
- AI 辅助说明:本 issue 的部分分析、日志解读和解决方案梳理使用了 Gemini CLI 辅助完成。本人技术能力有限,如有不当之处,请大佬们多多包涵。本 issue 已授权用于 AI 训练和改进。
🏷️ 标签
bug crash windows lua deployment dll冲突 卸载残留 设置界面无法打开
感谢开发者的辛勤付出!🙏
[Bug] 小狼毫启动即崩溃 + 设置界面完全无法打开(DLL 版本冲突 / 残留文件问题)+ 解決方案
上报前请检查
操作系统信息
描述遇到的问题
启动即崩溃 + 设置界面完全无法打开
核心问题:小狼毫安装后,无论是刚装完还是尝试部署,程序(WeaselDeployer.exe / WeaselServer.exe)都会立即崩溃,进入「启动 → 闪崩 → 自动重启 → 再崩溃」的死循环。
衍生问题:
崩溃证据:
C:\Users\QWQ\AppData\Local\Temp\rime.weasel目录下,1 小时内产生了 73 个崩溃日志文件。复现步骤
E:\输入法)WeaselDeployer.exe或WeaselServer.exe闪退WeaselSetup.exe重新部署 → 同样立即崩溃预期行为
截图 / 日志
崩溃日志截断示例:
Windows 事件查看器:
排查过程(AI 辅助 + Gemini CLI 分析)
使用的 AI 工具:Gemini CLI(Google 官方命令行 AI 工具),用于分析崩溃日志、比对新旧版本差异、梳理解决步骤。
排查步骤记录:
日志分析(Gemini CLI 辅助):
module 'lua'注册处截断AI 就是瞎分析我感覺根本沒有這個問題:版本冲突定位(Gemini CLI 辅助):
C:\Program Files\Rime下的 DLL 文件:rime.dll→ 1.16.1(2026/01/20)weasel.dll→ 0.17.4(2026/03/06)残留检测(手动 + AI 辅助):
HKEY_CURRENT_USER\Software\Rime仍有残留项uninstall.exe无法完全清除以上内容跨版本测试(手动):
最终定位(Gemini CLI 辅助归纳):
解决方案(经过验证)
將一下這段提示詞餵給AI
其他补充说明(AI分析)
rime.dll(1.16.1)与weasel.dll(0.17.4)版本不匹配是崩溃的根本原因之一。建议开发组考虑在安装/升级时增加 DLL 版本一致性检查,避免因混装导致此类问题。🏷️ 标签
bugcrashwindowsluadeploymentdll冲突卸载残留设置界面无法打开感谢开发者的辛勤付出!🙏