在Windows 7下,我似乎无法让图标显示出来,我真的很怀念Windows XP的这一点。

如何解决?


当前回答

我遇到了与OP相同的问题:Win 7 (x64), TortoiseSVN (x64)和DropBox (x86)。其他一些答案给了我所有的信息。我在这台机器上只安装过x64版本的TSVN。

以我为例,TSVN和DropBox是在我安装操作系统的同一天安装的,直到几天前,它们的覆盖工作都很好。我没有做任何改变这两个应用程序设置导致它们停止工作的事情。

下面是问题开始后我在图标覆盖注册表部分(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ShellIconOverlayIdentifiers):

DropboxExt1 DropboxExt2 DropboxExt3 EnhancedStorageShell 离线文件 SharingPrivate TortoiseAdded TortoiseConflict TortoiseDeleted TortoiseIgnored TortoiseLocked TortoiseModified TortoiseNormal TortoiseReadOnly TortoiseUnversioned

我验证了只有对应于前11个条目的覆盖显示在资源管理器中。当我通过在其中一些条目的开头添加'z'来修改上述条目的顺序时,仍然只显示前11个覆盖(在更新的顺序下)。

有了上面的内容,我就有了解决问题所需的一切(重命名或删除条目,以便我想要工作的TSVN条目在列表上<= #11)。下面讨论为什么会突然发生这种情况。

I know that based on the overlays that worked prior to a couple of days ago, keys 1-3, 7-9, 12-13 were all <= 11 in the list (not sure if overlay #14 ever worked since I never had files w/ read-only status. #15 never worked on this machine so i know it was never in the top 11). I also assume the block of TSVN keys move up/down in unison, therefore they were bumped down either two or three places (* see below). This implies that 2-3 items were added between the DropBox & TSVN blocks. The three that are there now are added by Windows and I would assume they'd be there as soon as the OS installed.

15个覆盖的列表是否在运行时确定?似乎覆盖处理程序有时会告诉windows shell没有图标可以添加到列表中。可能是我几天前搞砸了文件共享和文件加密的一些设置,导致4-6个位置的一些项目被“激活”,并将SVN的项目推下。

最后,我删除了一些条目,并移动了一些,所以我的最终列表看起来像这样:

DropboxExt1 DropboxExt2 DropboxExt3 SharingPrivate(我想显示这个) TortoiseAdded TortoiseConflict TortoiseDeleted TortoiseModified TortoiseNormal TortoiseReadOnly TortoiseUnversioned zOffline文件(我不使用同步中心,或“脱机文件”,所以我不关心这个) zEnhancedStorageShell(不知道什么是增强存储,不认为我需要这个)

其他回答

我也有同样的问题。事实证明,问题的原因是新的JungleDisk 3.0,它粗鲁地安装了三个名为“1Sync…”的覆盖。“2Sync…”和“3Sync…”把乌龟的那几个推到了尽头。

只需要删除reg hive顶部列出的那些JungleDisk键(或者用z_作为前缀),然后重新启动系统,乌龟就可以正常工作了。

考虑到Windows中存在这种覆盖限制,并且当前的工具很容易触及,工具供应商真的应该在高级安装期间询问用户是否想要安装它们。我不需要也不想要新的“同步”功能,也不喜欢用聪明的命名把图标塞在列表顶部的策略。为JungleDisk感到羞耻。

我建议向微软投诉图标覆盖限制低得离谱。如果我们有足够多的人抱怨,也许他们会解决这个问题的真正根源:

查看页面底部的评论: http://msdn.microsoft.com/en-us/library/cc144123 (VS.85) . aspx

给微软Windows 7团队关于这个问题的反馈: http://mymfe.microsoft.com/Windows%207/Feedback.aspx?formID=195

当我从存储库签出一个新项目时,我没有看到图标覆盖。

我开始寻找解决方法,然后想到了这个问题。

在阅读答案时,我注意到我的结帐项目上出现了图标叠加。

我猜图标只花了几分钟就出现了。

我认为这在人们迅速恐慌并开始编辑注册表之前可能是有用的。

Windows只能显示有限数量的覆盖图标(总共15个,在Windows之后有11个)。像Office Groove, Dropbox, Mozy, Carbonite等程序将劫持一堆11种可能的覆盖图标(如果微软增加这些图标的数量,因为使用它们的应用程序的数量似乎越来越多)…

你可以看到设置了哪些覆盖,并在注册表中更改它们(自担风险):

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ShellIconOverlayIdentifiers

If you are using TortoiseCVS (and have nothing else using overlay icons), you will get a couple of TortoiseSVN Icons, and all of your TortoiseCVS icons. This is because the overlay icons are used in alphabetical order. Again, at your own risk (editing the registry may blow up your computer, yada, yada, yada -- and if you are reading Stack Overflow and using Windows and haven't edited the registry, you are a rare beast indeed), feel free to rename them (I suggest putting numbers in front of the ones you want to use and "z_"'s prefixed to the ones you don't need). The TortoiseSVN Shell extensions are nicely named so you know what they do, the TortoiseCVS extensions are not. After looking through the source code, I found the pertinent information:

TortoiseCVS0 -在CVS TortoiseCVS1 -不在CVS中 TortoiseCVS3 -冲突 TortoiseCVS4 -在CVS只读 乌龟ecvs5 -忽略 乌龟ecvs6 -新增 TortoiseCVS7 -删除 龟龟ecvs8 -锁定

也不需要重新启动你的电脑。而是重新启动explorer.exe:

按Ctrl + Shift + Esc。 单击进程选项卡。 右键单击explorer.exe。 选择“结束进程”。 单击“结束进程”按钮。 单击Applications选项卡。 右键单击。 单击“新建任务(运行)”。 “打开”设置为:资源管理器 单击OK。

Windows资源管理器已重新启动,TortoiseSVN图标重新出现。