| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > Контекстное меню |
| Автор: max_crt 20.7.2003, 23:35 |
| Подскажите, пожайлуста, возможно ли средствами С++ присвоить контекстному меню определенного типа файлов(.zip, .exe, и.т.п.) дополнительный пункт, т.е. чтобы при щелчке правой кнопкой мышки над файлом определенного типа появлялось меню с дополнительным пунктом и по щелчку на этот пункт запускалась определенная программа? |
| Автор: -Mikle- 21.7.2003, 07:46 |
| Да, можно, на любом языке. Это делается изменениями в реестре в HKEY_CLASSES_ROOT. Я не помню точно как, но очень даже не сложно. Поищи на Яндексе, я когда искал находил на нем. |
| Автор: Mephisto 4.9.2003, 18:09 |
| Попробуй спросить там http://forum.vingrad.ru/index.php?act=SF&f=1 |
| Автор: Mephisto 4.9.2003, 18:44 |
| ОЧень просто. При ромощи функций Win API читаешь значение по умолчанию из директории с названием расширения (HKEY_CLASSES_ROOT\.zip). Затем полученое значение (у меня это WinRAR.ZIP) запоминаем в String (допустим AddRegRAR$). Затем: 1) в директорию "HKEY_CLASSES_ROOT\"+"AddRegRAR$"+"\shell" добавляешь новую директорию со своим названием (значение "по умолчанию" в ней будет высвечиватся в контекстном меню). 2) в директорию "HKEY_CLASSES_ROOT\"+"AddRegRAR$"+"\shell\"+"своё название" добавляешь новую директорию "Command". Значение "по умолчанию" в ней соответствует команде. (например Notepad.exe %1) 3) меняешь значение "по умолчанию" в директории "HKEY_CLASSES_ROOT\"+"AddRegRAR$"+"\shell" на "своё название". Всё пока !!! |