How to pass multiple files to shell context menu command (Windows Explorer)

You can achieve it with my program called singleinstance (source code). No shell extensions involved.

The main idea is that one instance of my program is launched for each file you select. It checks if another instance of the singleinstance program is running, and uses Inter-Process Communication to notify the existing instance that other files have been selected.