Icon Overlays don't work properly in XYplorer
Posted: 04 May 2010 23:13
.
Forum for XYplorer Users and Developers
https://www.xyplorer.com/xyfc/
From the above page, I get the impression that there is only space for 15 overlay images, and from the previous article, Windows 7 reserves 5 of them.grindax wrote:I don't know if that means the entire OS can only make use of 15 overlays, or if a single type of image/file can have 15 associated overlays.
The registry key will show you how many are installed. While it's possible that this limitation is part of the problem, I don't believe that's the case, and there's more to it than that.grindax wrote:If it's true that Windows only comes with 5, I can't imagine that installing Mozy and Dropbox (which in total use 3 or 4) has taken me over the OS limit.
This newer link explains this better. Each handler for a program wishing to add overlays has to implement the IShellIconOverlayIdentifier interface, which contains 3 methods.grindax wrote:The frustrating thing about that MSDN article is that it talks about overlays winning or losing when multiple apply, but there's no indication how they take priority.
Who knows what those internal rules are and how they come into play here? It seems the real purpose of this is if your handler defines multiple overlays you can then use the priorities to define which of them is more important.The Shell has a set of internal rules that determine the priority for many cases ... GetPriority is used for those cases in which the Shell's internal rules do not apply.
Well I think the 3 cases you outlined may be entirely separate problems.grindax wrote:But somehow Windows Explorer on Windows 7 is showing the expected overlays in the 3 situations I outlined. For the Mozy files, there is no other overlay, so there shouldn't be any conflict issue. For the Dropbox .url files, somehow Windows Explorer knows that Dropbox's overlays take precedence. And for the dynamic updates of files that are being synchronised, Windows Explorer must be seeing some events that Dropbox is triggering.
Well the first part of this problem is that Mozy doesn't register its overlays for 32-bit use as well. Maybe if you installed both the 32-bit and 64-bit versions it would work, if they have them I'm not familiar enough with Mozy to know. The key here is when XY is started it (or the shell on its behalf) reads HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers and loads the associated DLLs so that it knows who to ask about overlays.grindax wrote:The first issue (with Mozy overlays) seems to be present in all operating systems. I'm currently running Mozy on just my Windows 7 x64 machine
I truly believe this is one of those internal shell rules that may return a different icon based on whether WE is asking or a third-party. Perhaps, the rule is not as devious as that makes it sound, but it seems to make sense when you consider it's showing the shortcut arrow in the properties dialog.grindax wrote:The second issue (.url files) affects all versions of Windows 7, both 32-bit and 64-bit. On Windows XP it works OK.
...
If I open the properties of the file, I see the standard Windows 'shortcut arrow' overlay. But Windows Explorer itself shows the green tick.
Do you see them when you run this scripting line?:lukescammell wrote:I don't know if this has any relevance, but Dropbox overlays seem to work just fine in XYplorer... of course, it slows things down enough that I turn them off, but they do work.
Code: Select all
::sysicons 1; //show Icon OverlaysOne thing to note is that the set of overlays are only loaded when the program is loaded. Both XY and WE scan that above mentioned registry paths to load the icon handlers at startup, so you have to restart them if changes occur in the registry.lukescammell wrote:Well, I didn't see them, then I turned overlays back on, ran the script again and saw them, turned overlays off again, ran the script again and then saw them. Of course, I might have just missed them the first time...
With Dropbox the issue is that the shell link overlay (arrow for .url and .lnk files) is shown instead of the Dropbox sync icon within XY, but WE shows the Dropbox ones instead. There's also an issue with XY refreshing the icons, but I haven't really looked into that yet.lukescammell wrote:Either way, Dropbox overlays work for me (Vista SP2 x64).
