Windows Explorer Shell 支持的 Overlay Icon 最多 15 個,Windows 自身使用了 4 個,只剩 11 個可擴展使用,如果你之前還安裝其他的軟件,可能這 11 個位置都被他們剝奪了,輪不到 Tortoise 了。不過,還是可以給 Tortoise 優先騰出位置的:調整 Tortoise 圖標名稱的字母順序。因爲 Windows 內部就是按圖標名稱的字母順序來優先顯示的。
解決辦法:修改註冊表項HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers如下圖
各種網盤對應的名稱
百度雲這三個項以6個空格+點開頭,真無恥。。。刪除
.netdiskExt0
.netdiskExt1
.netdiskExt2
酷盤對應的overlayicon爲:
!!!BoxFlashSyncExt1
!!!BoxFlashSyncExt2
!!!BoxFlashSyncExt3
!!!BoxFlashSyncExt4
115 對應的overlayicon爲:
!IconOverlay_Conflict
!IconOverlay_ForbidSync
!IconOverlay_LargeFile
!IconOverlay_Synced
!IconOverlay_Syncing
快盤對應的overlayicon爲:
.KLive_OverlayIcon_ForbidSync
.KLive_OverlayIcon_Synced
.KLive_OverlayIcon_Syncing
既然知道原理了,那就挨個把網盤幹掉吧。
其中:115網盤屬於半綠色安裝,因爲只有Sync115Ext.dll (在C:\Users\用戶名\AppData\Roaming\115\Box) 被註冊,它正在shell overlay icon對應的dll,因此,只需要將它反註冊一下就可以了:regsvr32 /u Sync115Ext.dll。
經過卸載,ShellIconOverlayIdentifiers的目錄樹終於乾淨了,目錄樹如下:
1TortoiseNormal
2TortoiseModified
360UDiskGuard Icon Overlay
3TortoiseConflict
4TortoiseLocked
5TortoiseReadOnly
...
...
最後,重啓一下,或註銷一下,SVN圖標終於重建天日。