Add a Windows Explorer menu with an icon next to your action using this simple component. It can be used with any programming language, making it an ideal addition to your application.
The Context Menu Extension DLL uses standard functions and procedures that Windows Shell calls to manage data between the extension and the Shell. This includes IShellExtInit::Initialize, IContextMenu::QueryContextMenu, IContextMenu::GetCommandString, and IContextMenu::InvokeCommand. Of course, like all COM objects, you can expect to find standard functions like DllMain, DllGetClassObject, and DllCanUnloadNow as well.
But, here's the good news: your application doesn't need to know all of the intricacies of working with the Context Menu Extension DLL. Instead, it interacts with your application through a Command Line using the ShellExecute function. The DLL reads the fully-qualified path to your application from the registry and includes all selected items from the Windows Explorer in the Command Line string. Your application simply needs to parse the string to retrieve the items.
To help ensure that everything is working correctly, the package also includes TestMenu, an application that allows you to test the parsing of the string as well as the functionality of the menu prior to implementing it in your project.
Version 3.1: N/A