这个是我找的介绍很详细的一片去快捷方式的小箭头并不锁定任务栏的相关操作文章,感谢作者的分享
网上很多说去掉注册表中的[HKEY_CLASSES_ROOT\lnkfile]以及[HKEY_CLASSES_ROOT\piffile]的"IsShortcut“键
这样虽然去掉了箭头,但是底部的任务栏也被锁定了,想不锁定还要把IsShortcut键添加回去,这样箭头又出现了
还有更坑的要下载其他流氓软件删除。
http://blog.csdn.net/mrknight/article/details/8900085
一直都觉得在Win7下快捷方式上的箭头看着很别扭,并且也知道网上很多方法,主要是两类,一是:修改注册表;二是:使用美化工具(估计也是修改注册表)。
作为一个科班出身的伪程序员,就想使用一个比较靠谱比较简便的方法,无后患,一刀见血,于是跑去网上搜索,最后发现了以下批处理代码:
去掉快捷方式箭头的批处理 DeleteArrow.bat
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" /v 29 /d "%systemroot%\system32\imageres.dll,196" /t reg_sz /f
taskkill /f /im explorer.exe
attrib -s -r -h "%userprofile%\AppData\Local\iconcache.db"
del "%userprofile%\AppData\Local\iconcache.db" /f /q
start explorer
pause
恢复快捷方式箭头的批处理 RecoverArrow.bat
reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" /v 29 /f
taskkill /f /im explorer.exe
attrib -s -r -h "%userprofile%\AppData\Local\iconcache.db"
del "%userprofile%\AppData\Local\iconcache.db" /f /q
start explorer
pause
1.代码解释
关于实现去掉快捷方式箭头的代码,其主要思想是并没有真正意义上去掉箭头,只是使用透明图标代替了箭头(imageres.dll中的196),这样便实现了隐藏箭头的效果。
看着网上有的方法也是使用透明图标隐藏箭头的,但是还得自己准备一张透明图标,而该方法则直接使用Win7自带的图标库,很方便很快捷。
关于DeleteArrow.bat的代码做以下解释:
2.window图标库
- reg add,修改注册表,添加Shell Icons子项,并让其29的注册表项值为%systemroot%\system32\imageres.dll,196(透明图标);
- taskkill,结束进程explorer.exe,解除占用;
- attrib,修改iconcache.db文件属性,-s系统文件属性,-r只读文件属性,-h隐藏文件属性,而iconcache.db图标缓存文件(里面是你常用软件的图标,如果你把它删掉的话,并且禁止它自动生成的话,每次你打开电脑,电脑都重新解析第个快捷方式的图标,这会花大量时间。一般来说就有显示不正常才会删除让其重建图标缓存);
- del,删除iconcache.db,让其重建,/f强制删除只读文件,/q指定静音状态即不提示是否确认删除;
- start,重启explorer任务管理器;
- pause,暂停,让用户看下操作完成的状态;
Windows 系统自己的默认图标(回收站、计算机、控制面板等等)都保存在系统盘(一般是C盘)的Windows/System32 文件夹里面的一些DLL文件里面——imageres.dll、shell32.dll 和 moricons.dll 等几个系统文件。
- moricons.dll:XP以前老风格图标,不堪入目。。。;
- shell32.dll:XP常用图标;
- imageres.dll:Vista和Win7风格的图标。
这份代码的原作者则巧妙的使用了imageres.dll的196的透明图标。
3.Shell Icons
注册表中Shell Icons这个子项的29这个表项代表的就是快捷方式箭头。
关于Shell Icons的各个表项值介绍如下:
0 SI_UNKNOWN Unknown File Type
1 SI_DEF_DOCUMENT Default document
2 SI_DEF_APPLICATION Default application
3 SI_FOLDER_CLOSED Closed folder
4 SI_FOLDER_OPEN Open folder
5 SI_FLOPPY_514 5 1/4 floppy
6 SI_FLOPPY_35 3 1/2 floppy
7 SI_REMOVABLE Removable drive
8 SI_HDD Hard disk drive
9 SI_NETWORKDRIVE Network drive
10 SI_NETWORKDRIVE_DISCONNECTED network drive offline
11 SI_CDROM CD drive
12 SI_RAMDISK RAM disk
13 SI_NETWORK Entire network
14 ?
15 SI_MYCOMPUTER My Computer
16 SI_PRINTMANAGER Printer Manager
17 SI_NETWORK_NEIGHBORHOOD Network Neighborhood
18 SI_NETWORK_WORKGROUP Network Workgroup
19 SI_STARTMENU_PROGRAMS Start Menu Programs
20 SI_STARTMENU_DOCUMENTS Start Menu Documents
21 SI_STARTMENU_SETTINGS Start Menu Settings
22 SI_STARTMENU_FIND Start Menu Find
23 SI_STARTMENU_HELP Start Menu Help
24 SI_STARTMENU_RUN Start Menu Run
25 SI_STARTMENU_SUSPEND Start Menu Suspend
26 SI_STARTMENU_DOCKING Start Menu Docking
27 SI_STARTMENU_SHUTDOWN Start Menu Shutdown
28 SI_SHARE Sharing overlay (hand)
29 SI_SHORTCUT Shortcut overlay (small arrow)
30 SI_PRINTER_DEFAULT Default printer overlay (small tick)
31 SI_RECYCLEBIN_EMPTY Recycle bin empty
32 SI_RECYCLEBIN_FULL Recycle bin full
33 SI_DUN Dial-up Network Folder
34 SI_DESKTOP Desktop
35 SI_CONTROLPANEL Control Panel
36 SI_PROGRAMGROUPS Program Group
37 SI_PRINTER Printer
38 SI_FONT Font Folder
39 SI_TASKBAR Taskbar
40 SI_AUDIO_CD Audio CD
41 ?
42 ?
43 SI_FAVORITES IE favorites
44 SI_LOGOFF Start Menu Logoff
45 ?
46 ?
47 SI_LOCK Lock
48 SI_HIBERNATE Hibernate
根据这些表项值,便拓展出其他作用的批处理代码,有兴趣的朋友可以继续尝试折腾。