Если у вас нет опыта работы с C ++ в Windows и COM, расширение оболочки, вероятно, будет не самым легким проектом.
Вы уверены, что вам действительно нужно написать расширение оболочки?
Вы можете легко добавить новую опцию меню через реестр ( см. Здесь пример ) и установить «команду» этой опции для вашего исполняемого файла C #.
Вы можете передать выбранный файл процессу, используя команду %1
в пути.
Пример записи реестра для всех файлов:
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\\*\shell\SomeCmd]
@="Do Some Cmd"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\\*\shell\SomeCmd\command]
@="\"Path to your app\\YourApp.exe\" \"%1\""
Обратите внимание на %1
в конце - это будет имя файла. Ограничение состоит в том, что вы фактически будете созданы один раз для каждого файла - что также произойдет с расширением. Как только запись реестра будет установлена, она будет там, пока вы не удалите ее.