修复VSCode关联文件的图标 - Python, C++,Java


这几天开始重用vscode作为默认编辑器(Python, cpp),把它设为默认打开软件之后,发现windows 文件管理器中程序文件的图标变成了vscode自己的图标,没有区分文件类型,不方便。

修改效果:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HhJWQDGE-1619941688210)(assets/image-20210502151528147.png)]

手动修改注册表

修改教程 VS code关联的文件图标都变成了VS code的默认图标?

  • VSCode有一个自带的图标库,在其安装位置的这里

    ./VSCode\resources\app\resources\win32
    

    如图:

  • 我是便携版的VSCode,也许正因如此,才没有正确的图标,根据教程的方法,可通过注册表修复,步骤如下:

    以重新关联py文件为例,事先找好Python文件的图标,然后

    • 打开注册表编辑器,在HKEY_CLASSES_ROOT下新建一项,起一个你喜欢的名字例如VSCode.py,然后建立如图所示的结构:

    • VSCode.py这一项的默认值中填入对文件类型的描述,对应于这里:

    • DefaultIcon的默认值中填入图标的路径,如:

      "E:\VSCode\VSCode\resources\app\resources\win32\python.ico"
      
    • open下的command默认值填VS Code的路径然后加个空格和"%1"(双引号也要,注意是英文的双引号),如:

      "E:\VSCode\VSCode\Code.exe" "%1"
      
    • edit下的command默认值可以填另一个你喜欢的编辑器,在文件上右键点编辑时调用,这里以记事本为例,填入的内容是:

      notepad.exe "%1"
      
    • 转到HKEY_CLASSES_ROOT\.py,展开看到OpenWithProgids一项(没有就新建一个),在这一项中新建字符串值,名称填VSCode.py,值留空

    • 按F5刷新注册表,然后在任务管理器重启“Windows 资源管理器”

    • 然后随便找一个py文件,右键属性,在打开方式那里点击更改,弹出窗口中会有一项标着新增的 Visual Studio Code,这就是刚才在注册表中关联的vscode.py,选择这一项,图标就变成你之前在DefaultIcon里指定的图标了。

运行.reg文件修改

有多个类型的文件需要修改的话,可以用程序修改注册表。

  • 替换VSCode.py为对应语言,如VSCode.cpp
  • 修改注册表有风险,可先备份注册表中对应的两项:
    • [HKEY_CLASSES_ROOT\VSCode.py]
    • [HKEY_CLASSES_ROOT\.py]
  • 如果运行之后效果和预期不一致,可再检查与上面的手动步骤哪里不一致
    • 我运行之后,第4行总是无法更新到注册表,需要手动写入

Python

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VSCode.py]
@="Python 源文件"

[HKEY_CLASSES_ROOT\VSCode.py\DefaultIcon]
@="\"E:\\VSCode\\VSCode\\resources\\app\\resources\\win32\\python.ico\""

[HKEY_CLASSES_ROOT\VSCode.py\shell]

[HKEY_CLASSES_ROOT\VSCode.py\shell\edit]

[HKEY_CLASSES_ROOT\VSCode.py\shell\edit\command]
@="notepad.exe \"%1\""

[HKEY_CLASSES_ROOT\VSCode.py\shell\open]

[HKEY_CLASSES_ROOT\VSCode.py\shell\open\command]
@="\"E:\\VSCode\\VSCode\\Code.exe\" \"%1\""

[HKEY_CLASSES_ROOT\.py]
@="Python.File"
"Content Type"="text/plain"

[HKEY_CLASSES_ROOT\.py\OpenWithProgids]
"VSCode.py"=""

C++

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VSCode.cpp]
@="C++ 源文件"

[HKEY_CLASSES_ROOT\VSCode.cpp\DefaultIcon]
@="\"E:\\VSCode\\VSCode\\resources\\app\\resources\\win32\\cpp.ico\""

[HKEY_CLASSES_ROOT\VSCode.cpp\shell]

[HKEY_CLASSES_ROOT\VSCode.cpp\shell\edit]

[HKEY_CLASSES_ROOT\VSCode.cpp\shell\edit\command]
@="notepad.exe \"%1\""

[HKEY_CLASSES_ROOT\VSCode.cpp\shell\open]

[HKEY_CLASSES_ROOT\VSCode.cpp\shell\open\command]
@="\"E:\\VSCode\\VSCode\\Code.exe\" \"%1\""

[HKEY_CLASSES_ROOT\.cpp]
@="C++.File"
"Content Type"="text/plain"

[HKEY_CLASSES_ROOT\.cpp\OpenWithProgids]
"VSCode.cpp"=""

Java

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\VSCode.java]
@="JAVA 源文件"

[HKEY_CLASSES_ROOT\VSCode.java\DefaultIcon]
@="\"E:\\VSCode\\VSCode\\resources\\app\\resources\\win32\\java.ico\""

[HKEY_CLASSES_ROOT\VSCode.java\shell]

[HKEY_CLASSES_ROOT\VSCode.java\shell\edit]

[HKEY_CLASSES_ROOT\VSCode.java\shell\edit\command]
@="notepad.exe \"%1\""

[HKEY_CLASSES_ROOT\VSCode.java\shell\open]

[HKEY_CLASSES_ROOT\VSCode.java\shell\open\command]
@="\"E:\\VSCode\\VSCode\\Code.exe\" \"%1\""

[HKEY_CLASSES_ROOT\.java]
@="Java.File"
"Content Type"="text/plain"

[HKEY_CLASSES_ROOT\.java\OpenWithProgids]
"VSCode.java"=""

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值