У меня есть пункт контекстного меню в проводнике, теперь, как лучше всего вызвать мой процесс в файле? - PullRequest
1 голос
/ 13 февраля 2012

Я добавил пункт контекстного меню в Проводнике.Я добавил это через модификацию реестра.При щелчке правой кнопкой мыши по файлу я хочу вызвать его алгоритм сжатия.

В настоящий момент эта функция сжатия является методом в библиотеке классов C #.У меня есть базовое решение Visual Studio 2010, содержащее эту библиотеку классов (1 класс, 1 файл ресурсов) и проект мастера установки (очень простой).В тот момент, когда я запускаю «установку» в этом мастере установки, мне удается создать библиотеку DLL для библиотеки классов, и мой файл ресурсов сбрасывается в месте, указанном при установке.

Из записи реестра яЯ могу выполнить команду.В данный момент я запускаю notepad.exe в файле, который щелкнул правой кнопкой мыши.

1. Могу ли я как-нибудь зарегистрировать свою DLL для вызова ее функций?(Я не смотрю на какое-либо расширение оболочки, и у меня сложилось впечатление, что было что-то попроще)

2. В противном случае я не против создать .exe с консольным приложением илинапример.Если я это сделаю, получу ли я filepath из параметра args моего Main (string [] args)?

3. В варианте 2, где мне нужно сослаться на мой.EXE ?Я не вижу Notepad ++ в моих переменных окружения, но его можно вызывать без указания пути.

Спасибо, ребята!

1 Ответ

1 голос
/ 13 февраля 2012

1. С оговорками;http://blogs.msdn.com/b/codefx/archive/2010/09/14/writing-windows-shell-extension-with-net-framework-4-c-vb-net-part-1.aspx

2 & 3 Если вы используете более простой подход простого сопоставления исполняемого файла:

your_file_type\shell\open\command (default) = "c:\yourapp.exe" "%1"

, и ваше приложение получиткомандная строка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...