ContextMenuHandlers - adding to Windows shell

G

Guest

If you ever installed WinZip on Windows XP you would notice that when you
right-click on a folder there is a new WinZip entry on the context menu and
it has it's own submenu with a whole bunch of options.

I would like to try something like this for a small utility program I am
writing. Looking in the registry I see that WinZip registered itself as a
ContextMenuHandler under
HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers. But under the WinZip
Key there is a Binary Value with a long String that looks like some code or
ID.

What does this ID mean and how would I go about replicating what WinZip does
with my own C# program?
 
D

DeveloperX

MrNobody said:
If you ever installed WinZip on Windows XP you would notice that when you
right-click on a folder there is a new WinZip entry on the context menu and
it has it's own submenu with a whole bunch of options.

I would like to try something like this for a small utility program I am
writing. Looking in the registry I see that WinZip registered itself as a
ContextMenuHandler under
HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers. But under the WinZip
Key there is a Binary Value with a long String that looks like some code or
ID.

What does this ID mean and how would I go about replicating what WinZip does
with my own C# program?

I've not tried this, but I remember looking at this a while a go:
http://www.codeproject.com/csharp/SimpleContextMenu.asp
 
D

DeveloperX

MrNobody said:
If you ever installed WinZip on Windows XP you would notice that when you
right-click on a folder there is a new WinZip entry on the context menu and
it has it's own submenu with a whole bunch of options.

I would like to try something like this for a small utility program I am
writing. Looking in the registry I see that WinZip registered itself as a
ContextMenuHandler under
HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers. But under the WinZip
Key there is a Binary Value with a long String that looks like some code or
ID.

What does this ID mean and how would I go about replicating what WinZip does
with my own C# program?

To answer the specific question which I sort of glossed over ;) It's
the COM object that implements IContextMenu and IShellExtInt. If you
search for it in the registry it will eventually point to a DLL which
will be part of the winzip dist. I don't have it installed on this
laptop so I can't give an exact name.

If you're interested, look up COM interop in google, or one of the
interop tutorials on Codeproject.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top