![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Perun |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 15.8.2007 Где: Краснодар Репутация: нет Всего: нет |
Создал расширение оболочки для своего контекстного меню. Получил dll.
В своём приложении использую так:
записи в реестре создаются в самой dll [code=csharp] [System.Runtime.InteropServices.ComRegisterFunctionAttribute()] static void DLLRegisterServer(String str1) { try { // For Winnt set me as an approved shellex RegistryKey root; RegistryKey rk; root = Registry.LocalMachine; rk = root.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved", true);//rk.SetValue(guid.ToString(), "BatchResults shell extension"); rk.SetValue(guid, "FrontLine"); rk.Close(); // Set "Folder\\shellex\\ContextMenuHandlers\\BatchResults" regkey to my guid root = Registry.ClassesRoot; rk = root.CreateSubKey("*\\shellex\\ContextMenuHandlers\\FrontLine");// новое rk = root.OpenSubKey("*\\shellex\\ContextMenuHandlers\\FrontLine", true);// новое rk.SetValue("", guid); rk.Close(); } catch(Exception e) { System.Console.WriteLine(e.ToString()); } } [System.Runtime.InteropServices.ComUnregisterFunctionAttribute()] static void DllUnregisterServer(String str1) { try { RegistryKey root; RegistryKey rk; // Remove ShellExtenstions registration root = Registry.LocalMachine; rk = root.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved", true); rk.DeleteValue(guid);//rk.DeleteValue(str1); rk.Close(); // Delete regkey root = Registry.ClassesRoot; root.DeleteSubKey("*\\ShellEx\\ContextMenuHandlers\\FrontLine"); } catch(Exception e) { System.Console.WriteLine(e.ToString()); } } [code=csharp] |
|||
|
||||
| Perun |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 15.8.2007 Где: Краснодар Репутация: нет Всего: нет |
я пробовал регистрацию из командной строки через regasm(для 2.0 делаю и Regasm соответственный). Написал, что всё прошло - меню нет, а реестр заполнился. Укажите на ошибку пожалуйста
|
|||
|
||||
| Perun |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 15.8.2007 Где: Краснодар Репутация: нет Всего: нет |
Кто-нибудь ответит?
|
|||
|
||||
| explorer |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 104 Регистрация: 26.2.2008 Репутация: 1 Всего: 2 |
А в GAC сборку свою установил?
gacutils -i assembly_name.dll --------------------
|
|||
|
||||
| Perun |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 15.8.2007 Где: Краснодар Репутация: нет Всего: нет |
благодарю, установил!
хоть и из другой темы, но решение пришло!!))) как спасибо сказать? |
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
выбрать одно из двух ))) -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |