## 问题现象
- 版本:V4.22.4(安装包显示 4.21.1)
- 环境:Windows 11 中文用户名 + 已安装 11万+ 插件
- 崩溃位置:CellJS 初始化阶段,抛出 `std::length_error (basic_string)`
## 根因分析
社区分析认为是**路径拼接时未做字符串长度校验**,当路径过深或包含长中文字符时,触发 C++ `std::string` 溢出异常。
具体调用链:
```
WorkBuddy 启动
→ 加载插件列表(11万+)
→ CellJS 初始化
→ 拼接路径字符串(含中文用户名 + 深层路径)
→ std::string 长度溢出
→ 抛出 length_error
```
## 修复建议
1. **CellJS 增加字符串长度校验**:拼接路径前检查总长度,超出限制时给出友好错误提示
2. **验证长路径兼容性**:测试 Windows 长路径(>260字符)场景
3. **考虑使用 Windows 长路径 API**:`\\?\` 前缀或启用长路径支持
4. **插件加载优化**:对于超大量插件,采用分批加载或懒加载策略
## 临时解决方案
降级到 V4.10.4 可正常使用。
## 参考
原问题链接:https://cloud.tencent.com/developer/ask/2211496
希望官方能修复此问题,谢谢!
相似问题