【VSCODE 问题】VSCODE工具问题

解决vscode点击快捷方式没有反应的问题

VSCODE启动没有反应

解决方案:

1)查看vscode目录下debug.log日志
  • 意思为:VS Code 读不到它自带的 ICU 国际化数据文件。这个 ICU 报错几乎都是 安装目录里的资源文件缺失/损坏 或者 目录权限/杀软隔离 导致 Code.exe 读不到它的 icudtl.dat 等文件。
2)先确认是不是“用户配置/插件”把它搞崩了
1
2
cmd中:
code --disable-extensions
  • 如果这样能打开:说明是插件或用户配置损坏。之后进VS Code后逐个禁用插件试试。打不开接着往下尝试:
3)检查是否是环境变量/路径的影响
1
where code
  • 结果无输出。

  • cmd 里能运行 code 但 VS Code 打不开,也就是说,code 这个入口文件还在某个目录里,但 VS Code 本体/资源(ICU)坏了或路径断了。

  • 然后把“真正调用的 code 在哪”找出来,再直接修复。

查找code指向哪里:

1
Get-Command code -All
  • 如果它提示找不到命令,那说明 PS 环境找不到 code,可能是cmd里用了不同的 PATH / 或者跑的是某个残留的code.cmd。确保你vscode里的bin目录下是正确的code.cmd就行了。

  • 最关键的一步来了,我是在这一步找到了问题所在:

检查关键资源文件是否还在

  • 注意:路径要用你的vscode安装目录里bin文件夹所在同级路径。如上图,我的bin目录是在D:\vscode\Microsoft VS Code下。
1
2
3
4
5
6
7
8
9
Test-Path "D:\App\Microsoft VS Code\icudtl.dat"
Test-Path "D:\App\Microsoft VS Code\resources.pak"
Test-Path "D:\App\Microsoft VS Code\libEGL.dll"
Test-Path "D:\App\Microsoft VS Code\libGLESv2.dll"
我的输出:
false
false
false
false
  • 这些关键资源按理来说是要放在bin同级目录下,Code.exe 启动时会在根目录找icudtl.dat/resources.pak/libEGL.dll/libGLESv2.dll。但是找不到,说明路径错了。

  • 所以破案了:我的 VS Code 安装目录结构被“挪了一层”——关键资源文件都跑到 D:\vscode\Microsoft VS Code_\ 下面了,而 Code.exe 启动时会在根目录找 icudtl.dat / resources.pak / libEGL.dll / libGLESv2.dll,所以直接报 ICU 相关错误。

  • 所以把这些文件(以及同目录下其它资源)移回根目录即可:

1
2
3
4
5
6
7
8
$root = "D:\vscode\Microsoft VS Code"
$under = Join-Path $root "_"
# 1) 备份一下(可选但推荐)
Copy-Item -Recurse -Force $root "$root.bak_$(Get-Date -Format yyyyMMdd_HHmmss)"
# 2) 把 _\ 里的所有内容移动到根目录(遇到同名会覆盖)
Move-Item -Force "$under\*" $root
# 3) 尝试启动
& "$root\Code.exe"

评论

评论区加载中...

本站已稳定运行: 计算中... 天 | 博客: 27 篇 | 字数: 21218
使用 Hugo 构建
主题 StackJimmy 设计