![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Контекстное меню "Открыть с помощью..."
misha_gr © (2008-07-09 19:08:00)В рамках приложения реализован достаточно простой менеджер файлов. Выглядит, в первом приближении, как одна из панелей Total Commander. Есть необходимость вывести в контекстном выпадающем меню (по правой кнопке) окошко вроде системного окошка из Проводника "Открыть с помощью|Выбор программы". Может, Мастера подскажут что делать, где искать? Сильно подозреваю что существует стандартная функция API/ShellAPI, но вот как по научному?
misha_gr (2008-07-10 12:40:00) [1]Большое спасибо. Копаться в архивах - таки да, не особо прельщает. А с поиском: упрёк принимается, протупил.
AFHU (2008-07-09 22:34:00) [2]> копаться в архивах форума особо прельщает
Этого и не нужно. Разве поиск отменяли?
http://yandex.ru/yandsearch?text=delphi+%D0%B4%D0%B8%D0%B0%D0%BB%D0%BE%D0%B3+%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D1%8C+%D1%81+%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E
По первой ссылке выходим на DelphiWorld, а там ответ:
uses
ShellApi;
procedure OpenWith(FileName: string);
begin
ShellExecute(Application.Handle, 'open', PChar('rundll32.exe'),
PChar('shell32.dll,OpenAs_RunDLL ' + FileName), nil, SW_SHOWNORMAL);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if Opendialog1.Execute then
OpenWith(Opendialog1.FileName);
end;
AFHU (2008-07-09 22:28:00) [3]> Контекстное меню "Открыть с помощью..."
Помню, что несколько месяцев назад тут задавался точно такой же вопрос, как программно вызвать диалог "Открыть с помощью". Тут даже было дано решение, но кажется на C++ (потому что так нужно было тогда автору вопроса)
Хотя не уверен, что misha_grвариант копаться в архивах форума особо прельщает