What is the difference between Shell and ShellEx in Windows Registry? What is the difference between Shell and ShellEx in Windows Registry? windows windows

What is the difference between Shell and ShellEx in Windows Registry?


The Shell key is for static verbs used by ShellExecute and file-type context menus. They are simple to implement because they are just a string that specifies the command. They can be extended with optional COM objects (DropTarget etc.) if required.

The ShellEx key is for shell extensions, these are COM objects and there are various extension points in the shell and each type is a subkey of ShellEx. ShellEx\ContextMenuHandlers is the shell extension version of the plain Shell key. The different types of shell extensions are listed here.