Контекстное меню проводника

Рейтинг: 2Ответов: 1Опубликовано: 05.07.2011

Я хотел бы сделать подобие стандартного проводника виндоуз, просто удобное, с нужными мне фишками. Не могу найти информацию, можно ли вызвать стандартное контекстное меню проводника (попап по клику правой кнопкой мыши)?

Ответы

▲ 3
procedure TForm1.PopupMenu1Popup(Sender: TObject);
var 
ContextMenu : IContextMenu; 
menu : HMENU;
begin 
FIShellFolder.GetUIObjectOf(Handle, 1, ShellItem(ListView.Selected.Index). ID, 
IID_IContextMenu, nil, ContextMenu); //FIShellFolder-переменная, которую нужно инициализировать "выше"
menu := CreatePopupMenu(); 
ContextMenu.QueryContextMenu(menu, 0, 1, $7FFF, CMF_EXPLORE); 
TrackPopupMenu(menu, 
TPM_LEFTALIGN or TPM_LEFTBUTTON or TPM_RIGHTBUTTON or TPM_RETURNCMD, 
Mouse.CursorPos.x, Mouse.CursorPos.y, 0, Handle, nil); 
DestroyMenu(menu); 
end;

Я думаю пример на Дельфях поможет..