Hola,
Puedes echar un vistazo a cómo funciona cierto ejemplo que acompaña a Delphi y que encontrarás en la carpeta "Demos", dentro de "ActiveX", concretamente en "ShellExt". Algunos componentes pueden ayudarte, como los "Drag and Drop Component Suite" de Anders Melander y que puedes encontrar en en
Torry's Delphi Pages. En los componentes DecComp que encontrarás
aquí mismo se ha partido del ejemplo de Delphi mencionado más arriba para llevar a cabo el componente "TMenuContextual". También podrías fijarte en cómo va la cosa ahí, modificando cuanto te fuera menester modificar.