If you just want to add menu items, shell extension will be redundant. You can register a command line in the registry that will run your exe with the selected files (files) as a parameter. Shell extensions are really only needed if you want to change the behavior of the explorer, add custom icons, or copy files based on files based on files.
http://www.codeproject.com/KB/shell/SimpleContextMenu.aspx
If a shell extension is what you need, itβs best to write a thin shell in unmanaged code that accesses another process that is your .NET application through some kind of communication channel with the cross process. Due to all possible version issues, it is not recommended that you load the .NET runtime into the explorer process.
Jd conley
source share