Quantcast
Channel: voidtools forum
Viewing all articles
Browse latest Browse all 1719

Development, plugins and third party software • Re: Integrating with Everything to add folder sizes to Explorer

$
0
0
A user reached out to me with an interesting problem. Can you spot the root cause?
https://streamable.com/m631xz

From a quick analysis, here's what's going on:
  • Everything opens the folder by using SHOpenFolderAndSelectItems
  • Explorer opens the folder and lists the contained files and folders
  • For each folder, the mod kicks in and queries Everything for the folder size
  • Meanwhile, Everything is blocked in SHOpenFolderAndSelectItems, which for some reason seems to return only after the list is fully loaded
  • The mod times out, resulting in a long delay and a lack of folder sizes
  • Afterwards, refresh works fine as Everything is no longer blocked
On Everything's side, a workaround can be to either run explorer.exe explicitly or to run SHOpenFolderAndSelectItems in another thread. Neither is pretty, but also not horrible. An upside is that regardless of the mod, opening a folder won't block Everything, but I don't think anyone ever complained about that.

On the mod side, I can do the same for Everything.exe by hooking SHOpenFolderAndSelectItems :) which is the short-term solution I have in mind right now. The mod injects into all processes, including Everything, anyway.

Any better ideas?

BTW interestingly, the problem always happens with the old ribbon UI of Explorer (what's on the video), but only rarely happens with the new UI (on the other screenshots in this thread). Perhaps they changed some of the code to become more asynchronous.

Statistics: Posted by m417z — Sun Nov 10, 2024 10:06 pm



Viewing all articles
Browse latest Browse all 1719

Trending Articles