Обычно это можно реализовать двумя способами.
Ключи реестра - Вы можете записать ключи и значения в HKEY_CLASSES_ROOT. Если вы посмотрите на этот улей, вы увидите расширения на вашем компьютере. Посмотрите на эту статью для деталей о ключах и значениях. Здесь возможно что-то простое, например, возможность открывать .myfile
типов в вашем приложении. Вот пример сопоставления файлов
Расширения оболочки (написано в COM): Здесь вы можете делать более сложные вещи, такие как Обработчики. Они будут вызываться из Windows, чтобы вы могли выполнять такие вещи, как рисование в меню или добавлять настраиваемые действия. когда файл щелкают правой кнопкой мыши. Здесь есть нечто большее, чем файлы, вы даже можете добавить листы свойств и пользовательские подсказки.
Вы найдете разговор о том, что вы не используете .NET для написания обработчика оболочки **. Это относится только к более старым версиям .NET. С .NET4 все нормально.
Эта статья должна помочь вам с обработчиком контекстного меню в .NET4
** Почему было Не рекомендуется:
Когда вы пишете обработчик оболочки, он вызывается хост-процессом (обычно проводником Windows), а также такими вещами, как диалоги FileOpenDialogs и FolderBrowser. Таким образом, проблема может возникнуть, если вы напишите расширение оболочки в .NET 2.0 и приложение .NET 1.1, называемое диалог открытия файла, а затем будет вызван ваш обработчик оболочки .NET 2.0 и ваше приложение .NET 1.1, которое имеет более старую версию CLR. и будет конфликт версий.
Итак, я рад, что наконец-то узнал, что это как-то исправлено в .NET 4 =)