拖拽.vsix文件无效——VSCode自1.70起禁用该方式,仅支持通过“Extensions: Install from VSIX”命令安装,并需配置locale为"zh-cn"后彻底重启。

直接拖进去不会生效——VSCode自1.70版本起已禁用该方式,文件只是被复制到~/.vscode/extensions/目录,但未注册扩展ID、不加载语言资源、也不出现在已启用列表中。
为什么拖拽.vsix文件进VSCode窗口没反应
这不是UI卡顿或操作失误,而是VSCode主动拒绝了这种安装路径。它只允许通过内置命令面板调用安装器来完成扩展注册流程,包括校验签名、解压归档、写入.metadata、触发资源加载等步骤。拖拽行为被静默忽略,无提示、无日志、不报错。
- 现象:右下角状态栏仍显示
en,设置页/命令面板/调试视图全是英文 - 验证方式:打开扩展面板(
Ctrl+Shift+X),搜索ms-ceintl.vscode-language-pack-zh-hans,若未显示“已启用”状态,说明根本没装上 - 后台残留:即使看到文件出现在
%USERPROFILE%\.vscode\extensions\(Windows)或~/.vscode/extensions/(macOS/Linux)里,也只是个未解压的.vsix归档,不是可运行的扩展结构
离线安装必须走Extensions: Install from VSIX命令
这是唯一被VSCode主程序认可的离线安装入口,它会完整执行扩展生命周期管理逻辑。
- 操作路径:
Ctrl+Shift+P→ 输入Extensions: Install from VSIX→ 回车 → 选中你下载好的vscode-language-pack-zh-hans-*.vsix(发布者必须是MS-CEINTL)→ 点Install - 关键点:不能靠双击、不能靠拖入、不能用
code --install-extension命令行(该命令在离线环境下也常静默失败) - 版本匹配:确保
.vsix文件名中的版本号(如1.104.2025082016)与本地code --version输出的主版本一致;否则可能显示Extension is not compatible或直接跳过激活
装完.vsix后界面还是英文?必须手动设locale并彻底重启
安装语言包 ≠ 切换界面语言。VSCode需要明确知道你要用哪种locale来协商UI资源,而这个值必须严格为"zh-cn"(小写、短横线、双引号包裹),写进locale.json并重启进程。
- 执行
Ctrl+Shift+P→ 输入Configure Display Language→ 选zh-cn→ 点Restart(注意不是Reload Window) - 若命令面板搜不到
Configure Display Language,说明语言包未注册成功,需先卸载再重走VSIX安装流程 - 重启前务必杀掉所有后台进程:Windows任务管理器中结束全部
Code.exe,macOS/Linux执行pkill -f "Code Helper"和pkill -f "Electron" - 不要手动编辑
settings.json加"locale": "zh-cn"——这个字段当前不被识别,纯属无效配置
最容易被忽略的是“彻底终止后台进程”这一步。很多用户点了Restart却没清干净Electron残留,导致新启动的实例仍沿用旧环境变量和缓存,语言包始终无法加载。别跳过这步,哪怕多花十秒。


















