[win] Системное меню файла

dangerr

В наиболее известных гуевых файловых менеджерах можно при нажатии на кнопку "Menu" (что как правило между win и Ctrl находится) увидеть системное меню файла так же как и в Explorer. Хотелось бы узнать как такое можно реализовать? Особенно интересует возможно ли это сделать из программы, написанной на Java. Думаю надо использовать Java Native Interface и в нем вызвать что-то из WinAPI....

klyv

ты прав, именно так и делается.

Andbar

Ну так посмотри, как это делается в файловом менеджере. Думаю, написанный там код, протестированный на множестве машин, явно лучше чем ты по msdn-овским справкам сделаешь. Что касается жавы, хз.
зы: в том файле, на который я дал ссылку, искать следует IContextMenuPtr.

dangerr

Жесть, этот весь листинг только лишь делает вывод системного меню файла и больше ничего? Я полагал это делается несколько проще....
В идеале вообще хотелось иметь функцию, которой передал путь к файлу и координаты где хочу видеть менюшку и все.

Andbar

Там системное меню вызывает лишь кусок листинга, после объявления переменной типа IContextMenuPtr.
Для решения твоей задачи надо всего-лишь вырезать этот кусок в отдельную функцию, скомпилить её в дллку. Правда могут быть проблемы с работоспособностью 32хбитной дллки под 64хбитной виндой (например, там вроде для 32хбитных процессов какие-то пути мапятся в другое место так что возможно надо будет для 64хбитной винды отдельную дллку собирать.

psm-home

Можно посмотреть, как это сделано у Алексея Ефимова в плагине Windows Context Menu
Оставить комментарий
Имя или ник:
Комментарий: