找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 82967|回复: 22

[文件操作] [已解决]BAT脚本修改指定文件夹的图标,文件夹图标不变

[复制链接]
发表于 2018-10-8 09:30:43 | 显示全部楼层 |阅读模式
  1. @echo off
  2. set dir="%cd%"
  3. set ico="%cd%\586.ico"
  4. pause
  5. (echo [.ShellClassInfo]
  6. echo IconResource=%ico%)>"%dir%\desktop.ini"
  7. pause
  8. attrib +s +h "%dir%\desktop.ini"
  9. pause
  10. attrib +s "%cd%"
  11. pause
复制代码
desktop.ini文件可以创建,不管怎么刷新,文件夹图标不变。不知道那里问题

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2018-10-8 10:12:06 | 显示全部楼层
attrib +r "%cd%"
 楼主| 发表于 2018-10-8 11:07:36 | 显示全部楼层
谢谢,加了还是不行

@echo off
set dir="%cd%"
set ico="%cd%\586.ico"
pause
(echo [.ShellClassInfo]
echo IconResource=%ico%)>"%dir%\desktop.ini"
pause
attrib +s +h "%dir%\desktop.ini"
pause
attrib +s +r "%cd%"
pause
发表于 2018-10-8 11:30:02 | 显示全部楼层
.ico的问题,不合标准。
 楼主| 发表于 2018-10-8 11:41:25 | 显示全部楼层
谢谢
.ico是在shell32.dll提取出来的
 楼主| 发表于 2018-10-8 11:49:43 | 显示全部楼层
你好,图标需要什么标准?换了好多不行
发表于 2018-10-8 17:34:52 | 显示全部楼层
图标要指定是图包里的哪一张图片。如:586.ico,0  为xxx.ico的第一张。
这个问题好前不久有提过。
 楼主| 发表于 2018-10-8 17:38:33 | 显示全部楼层
我是把图标提取出来单独用的,不是在dll里边,谢谢
发表于 2018-10-8 19:29:26 | 显示全部楼层
回复 8# 881966

提出来也要加。
以前写过一个,翻出来帖上:XP WIN7 未试。WIN8立现,WIN10要刷新。把图标改成 #.ico

  1. @echo off
  2. set/p=先把 #.ico 放入文件夹内并拖文件夹到批上 <nul
  3. (pause>nul
  4.         (for /d %%a in (%1) do (
  5.                 echo [.ShellClassInfo]
  6.                 echo IconResource=..\%%~nxa\#.ico,0
  7.                 echo [ViewState]
  8.                 echo Mode=
  9.                 echo Vid=
  10.                 echo FolderType=Pictures
  11.         ))>"%~1\desktop.ini"
  12.         pushd %1
  13.         attrib +s +h desktop.ini
  14.         attrib +s +h #.ico
  15.         popd
  16.         attrib +r %1
  17.         ie4uinit -show
  18. )
  19. echo 延时60秒... 针对WIN10系统,文件夹嵌套,延时刷新
  20. timeout /t 60 /nobreak
  21. md "%~1\请删除我"
  22. rd /q "%~1\请删除我"
  23. ie4uinit -show
复制代码
 楼主| 发表于 2018-10-8 19:44:15 | 显示全部楼层
谢谢,我试试看
发表于 2018-10-8 23:15:29 | 显示全部楼层
  1. @ECHO OFF
  2. SET "MUSIC_DIR=D:\新建文件夹"
  3. CALL :DIRICON "%MUSIC_DIR%"
  4. PAUSE
  5. GOTO :EOF
  6. ::结束
  7. :DIRICON DIR
  8. ATTRIB -H -S -R "%~1\DESKTOP.INI"
  9. (
  10. ECHO,[.ShellClassInfo]
  11. ECHO,IconFile=%%SystemRoot%%\system32\SHELL32.dll
  12. ECHO,IconIndex=-237%_这是音乐文件夹图标_%
  13. )>"%~1\DESKTOP.INI"
  14. ATTRIB +H +S "%~1\DESKTOP.INI"
  15. ::ATTRIB -R %1
  16. ATTRIB +R %1
复制代码
XP测试立马生效,DLL文件中的图标不需要提取出来,直接给出序号就可。(如例子代码中的序号是-237)
发表于 2018-10-8 23:56:59 | 显示全部楼层
自己把那俩变量显示出来是什么鬼
 楼主| 发表于 2018-10-9 10:58:54 | 显示全部楼层
11楼兄弟,谢谢,我试试看
 楼主| 发表于 2018-10-9 10:59:52 | 显示全部楼层
12楼兄弟,那俩变量就是当前路径,测试用
 楼主| 发表于 2018-10-9 11:10:40 | 显示全部楼层
回复 11# cutebe


    想建立透明文件夹,把几个透明图标提取了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 21:08 , Processed in 0.023175 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表