Меню по правой кнопке мыши
или книжку добудь
По-видимому, HKEY_CLASSES_ROOT\*\ shellex\ContextMenuHandlers
Это, скорее всего, для всех файлов сразу. А если хочешь только для определенных расширений - то там отдельные подразделы для каждого. Попробуй посмотреть куда, например, winrar прописывается.
REGEDIT4
[HKEY_CLASSES_ROOT\.danya]
@="DANF"
[HKEY_CLASSES_ROOT\DANF\shell\open]
@="Play DANF type"
[HKEY_CLASSES_ROOT\DANF\shell\open\command]
@="\"C:\\Program Files\\Windows Media Player\\mplayer2.exe\" /play \"%L\" "
Теперь на файлах с *.danya (тип DANF) будет появляться пункт меню Play DANF type, по которому будет запускаться медиа плеер с этим файлом (%L)
А через ContextMenuHandlers, видимо, придется мутить Com-объекты и прочую пургу

Вот тут можно вместо open написать другую команду, и она появится в меню
open - стандартная команда.
Посмотри в реестре - там куча примеров.
В принципе, меня уже это устраивает, но можно ли аналогично это сделать для всех расширений? Или только через Com-объекты?
Если ты используешь уже занятое расширение файла, как винда сможет отличить "твои файлы" от "старых файлов". По содержимому файла? Не уверен, что это можно сделать... Я лично не знаю как.
видел как делает winrar ? неужели ActiveX ?

menu: File->Associate With


А вот хз. Ищи.



Можно добавить в винду свой обработчик, который будет рюхать по содержимому.
Кроме того, это должен быть жутко рюхливый обработчик

Насчет меню не знаю, но иконки показывать разные точно можно..
Вот статья, которая рассказывает про расширения оболочки виндов
далее Статьи\Windows Shell\Руководство полного идиота по написанию расширений оболочки

Выбираем EditTtype а там внизу такая кнопочка new... тыкаем ее, потом вводим action(verb) например fuck ну и так далее... потом то что туда навводили и будет отображаться в контекстном меню.
ЗЫ: Если кнопочка EditTtype не нажимается, значит надо сначала new type нажать, то есть зарегить тип и назначить дефолтное действие, только потом можно будет добавлять другие. И уже потом снова сделать associate with.
Только сегдня поставил распаковку .rar на открырие ентих файлов
Оставить комментарий
solo-h
Вопрос про винды. Как добавить в меню, вызываемое правой кнопкой мыши (на файле в експлорере какой-либо пункт и вызывать по нему какую-то программу?