2013-08-30 1 views
0

я хочу, чтобы добавить некоторые новые элементы (с подпунктами) моего программного обеспечения в контекстное меню, как этотКак добавить элементы с подпунктами в контексте системного меню с помощью C#

Так что я посмотрел в реестре и нашел это:

и я думаю, что программное обеспечение «Google Drive» создал некоторые классы владельца (или услугу), чтобы добавить команду в контекстном меню, а строка {BB02B294-8425-42E5-983F -41A1FA970CD6} является представление данной услуги (или классов), как SendTo службы Windows (правой кнопкой мыши -> Send To)

Но как это сделать?

+0

AFAIK способ сделать это с помощью [расширения оболочки] (http://msdn.microsoft.com/en-us/library/windows/desktop/cc144067 (v = vs.85) .aspx) – Dominic

ответ

2

Прежде всего, самое главное, нет никакого способа, чтобы создавать вложенные контекстные меню без обработчиков контекстного меню .A контекстное меню обработчика ничего, кроме зарегистрированного COM Server на пользователей computer.A COM-сервер существует в виде динамической библиотеки ссылок.Чтобы объяснить это лучше, позвольте мне привести пример с вашего первого изображения; Запись в меню с именем Google Drive - это COM-сервер и записи Скопировать в папку и Переместить в папку - это простые записи ярлыков в registry.Making ярлык записи с конкретными командами относительно легко.
Чтобы сделать ярлык на контекстное меню рабочего стола, например, к Launch Блокнот, найдите следующий раздел реестра в редактор реестра, [HKEY_CLASSES_ROOT \ Directory \ Background \ оболочки], создать новый ключ в нем, назовите его Запустите Блокнот, в его значение по умолчанию добавьте это, Выполнить Блокнот .Теперь создать новый ключ под Launch Блокнот и назовите его команду и добавить его значение по умолчанию notepad.exe .Это все, теперь право щелкните на своем рабочем столе, вы увидите новую запись с именем Запишите блокнот, щелкнув по нему, откроется Notepad.So это был способ создания простой записи ярлыка, обратите внимание, что эти ярлыки не могут быть вложенными, значит вы не можете добавить какую-либо запись под Записать блокнот.

Теперь, если вы хотите узнать, как начать работу с расширением оболочки, посмотрите here.
Надеюсь, это помогло бы вам.