Improve Explorer replacement functionality

Features wanted...
Post Reply
ksarnelli
Posts: 154
Joined: 13 Dec 2014 04:48

Improve Explorer replacement functionality

Post by ksarnelli »

I figured I would create a new topic as I didn't see this on the roadmap list.

XY is my favorite Explorer replacement, by far, but it definitely lacks compared to some others in regards to actually replacing native windows functions to the maximum extent. Here are a few examples:

- Use DDE to force "My Computer", "Recycle Bin", etc to open in XY
- Implement support for the SHOpenFolderAndSelectItems() calls from other applications (Chrome, etc) by registering XY as a shell window using the IShellWindows API (Shdocvw.dll) and handling the calls.

The addition of these features would fill a large void in the most fundamental feature of XY: replacing Windows Explorer. Please, please, please look into implementing these. :) Thanks!


ksarnelli
Posts: 154
Joined: 13 Dec 2014 04:48

Re: Improve Explorer replacement functionality

Post by ksarnelli »

Bumping this for consideration in v16. I think the improved Explorer replacement functionality would be a great focal point and would benefit every single XY user. :mrgreen:

admin
Site Admin
Posts: 60567
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: Improve Explorer replacement functionality

Post by admin »

Interesting information, but not that easy to do.
I don't have the IShellWindows interface at hand, I'd need to find or create a typelib first. Or is there a flat API for that in Shdocvw.dll by any chance?

ksarnelli
Posts: 154
Joined: 13 Dec 2014 04:48

Re: Improve Explorer replacement functionality

Post by ksarnelli »

admin wrote:Interesting information, but not that easy to do.
I don't have the IShellWindows interface at hand, I'd need to find or create a typelib first. Or is there a flat API for that in Shdocvw.dll by any chance?
There is an IDL (exdisp.idl) and a Header (exdisp.h), not sure exactly how to use those in VB6 but you can probably generate a .tlb.

From what I can tell, the method you would want to look into is IShellWindows::RegisterPending

I'll PM you another link that might be useful.

Post Reply