Hi all there
WHAT I WANT TO DO WITH SHELL INTEGRATION - EXPLANATION
I want to integrate a VB6 program - or
VB.NET, but VB6 is still preferred :-) - into Windows Shell, i.e. into Explorer's context menu.
I've read the MSDN Shell Programmer's Guide carefully.
There will be shell entries defined in the registry in
- "HKEY_CLASSES_ROOT\*" (for "all files"), and
- "HKEY_CLASSES_ROOT\directory" (for "file folders")
in order to be able to apply the program's function(s) to
(a) a single selected file in a folder,
(b) multiple selected files in one folder,
(c) all files in the sub-tree of a selected folder.
While (a) and (c) are quite easy to accomplish, because only one name space object (file system object) is selected, there is something more to do for (b) to get a collection (or list) of all selected files.
Explorer "likes" DDEExec for such cases. So I will define the registry shell keys with DDEExec according to many examples found in the registry [if I would try to do without DDEExec, Exlorer would start one instance of the
VB program for each selected file, which I certainly do not want].
Because of DDEExec the
VB program must be able to do a "DDE conversation" with Explorer to get the files selected.
With DDE (and DDEExec, and the System topic and so on) I am a bloody beginner.
QUESTIONS
- Is there anybody who knows how to do this in VB6?
- Or knows some sample code from which I could learn?
- Or knows a site which deals with this topic?
Your answers are highly appreciated!
Thnx a lot,
schurli