Текущий архив: 2005.09.18;
Скачать: CL | DM;
Вниз
Как интегрировать программу с оболочкой Windows? Найти похожие ветки
← →
Sidex (2005-08-24 16:38) [0]Помогите, кто чем может. Недавно написал медиа-плеер, хочу немного доработать. Нужно сделать следующие вещи:
1. Если в проводнике выбрать несколько медиа-файлов и выбрать пункт "Открыть с помощью" - "Project.exe", то должна запуститься программа и одновременно сформировться плейлист на основе выбранных файлов. Пробовал пользоваться функцией ParamStr, но она возвращает только адрес последнего выбранного файла, а нужно обрабатывать ВСЕ.
2. Если выбелить несколько файлов и бросить их на окно с плеером, то они должны добавиться в плейлист. Здесь опять-таки мне нужны только полные адреса файлов, но как их получить?
Заранее спасибо.
← →
Polevi © (2005-08-24 16:42) [1]IShellFolder
← →
Sidex (2005-08-24 17:08) [2]А подробнее?
← →
Sidex (2005-08-25 12:45) [3]Что, никто не знает? Дайте хоть маленький примерчик.
← →
Leonid Troyanovsky © (2005-08-25 12:50) [4]
> Sidex (25.08.05 12:45) [3]
> Что, никто не знает? Дайте хоть маленький примерчик.
http://groups.google.com/group/fido7.ru.delphi.chainik/msg/278f89887ab26b31
--
Regards, LVT.
← →
Leonid Troyanovsky © (2005-08-25 12:53) [5]
> Leonid Troyanovsky © (25.08.05 12:50) [4]
И, скажем,
http://groups.google.com/group/fido7.ru.delphi.chainik/msg/cc85a749fdfddcb7
--
Regards, LVT.
← →
Digitman © (2005-08-25 12:53) [6]
> Sidex (25.08.05 12:45) [3]
гуглить умеешь ?
http://www.google.ru/search?hl=ru&q=Delphi+IShellFolder&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=
← →
Чапаев © (2005-08-25 12:54) [7]Гугли, шмугли...
"C:\Program Files\Borland\Delphi7\Demos\ActiveX\ShellExt\"
← →
Sidex (2005-08-26 13:26) [8]Начсет http://groups.google.com/group/fido7.ru.delphi.chainik/msg/cc85a749fdfddcb7 спасибо, все работает (правда там вместо NumFiles:=DragQueryFile(Msg.Drop, -1, nil, 0) нужно писать NumFiles:=DragQueryFile(Msg.Drop, DWORD(-1), nil, 0), а то не пашет.
По поводу http://groups.google.com/group/fido7.ru.delphi.chainik/msg/278f89887ab26b31 ничего не понял. Хоть бы одни комментарий на русском написали.
← →
Leonid Troyanovsky © (2005-08-26 13:35) [9]
> Sidex (26.08.05 13:26) [8]
> ничего не понял. Хоть бы одни комментарий на русском написали.
Для Michel английский, IMHO, тоже не родной, он из Германии.
Поэтому, и пишет он очень даже понятно даже для китайца.
Кроме того, большая часть письма, вообще, на Delphi.
И чего не понято?
--
Regards, LVT
← →
Antonn © (2005-08-26 13:51) [10]Leonid Troyanovsky © (26.08.05 13:35) [9]
2. Если выбелить несколько файлов и бросить их на окно с плеером, то они должны добавиться в плейлист. Здесь опять-таки мне нужны только полные адреса файлов, но как их получить?private
procedure WMDropFiles(var Message: TWMDropFiles); message WM_DROPFILES;
protected
procedure CreateParams(var Params: TCreateParams); override;
implementation
procedure TF_PlayList.CreateParams(var Params: TCreateParams);
begin
inherited
CreateParams(Params);
Params.ExStyle := Params.ExStyle or WS_EX_ACCEPTFILES;
end;
procedure TF_PlayList.WMDropFiles(var Message: TWMDropFiles);
var aFile: array [0..255] of Char;
FilesCount,N : Integer;
begin
inherited;
FilesCount := DragQueryFile(Message.drop, $FFFFFFFF, nil, 0);
begin
for N := 0 to FilesCount - 1 do begin
DragQueryFile(Message.drop, N, aFile, 256);
//тут добавляем, в aFile имеем имя файла/путь
end;
end;
DragFinish(Message.Drop);
end;
← →
Leonid Troyanovsky © (2005-08-26 14:08) [11]
> Antonn © (26.08.05 13:51) [10]
> Leonid Troyanovsky © (26.08.05 13:35) [9]
> procedure WMDropFiles(var Message: TWMDropFiles); message
> WM_DROPFILES;
Насколько я понял, непонятым остался другой пример, с DDE open.
--
Regards, LVT.
← →
Antonn © (2005-08-26 14:51) [12]Leonid Troyanovsky © (26.08.05 14:08) [11]
ой, я в [10] по ошибке адрессата перепутал:)
Страницы: 1 вся ветка
Текущий архив: 2005.09.18;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.009 c