Вниз
Скачать: CL | DM;

Добавление списка файлов в программу через меню explorer.   Найти похожие ветки 

← →
dracula ©   (2006-05-15 14:25) [0]

У меня есть программа, она копирует файлы. Надо реализовать добавление файлов через контектное меню, по типу как в winamp. В каком направлении надо копать? Есть ли какой пример (я в курсе что надо это делать через com, но я раньше с этим не сталкивался), или какая нибудь информация как это делается. Заранее спасибо.


← →
Ламот   (2006-05-15 14:52) [1]

OpenDialog - чем не устраивает?


← →
Poirot ©   (2006-05-15 15:22) [2]

http://www.rsdn.ru/summary/390.xml


← →
dracula ©   (2006-05-15 16:12) [3]

OpenDialog - чем не устраивает?
Это когда прога в работе уже, (да и вообще это не то) и слишком примитивно. А вот например человек захотел скопировать файлы, и чтоб не запускать прогу и там их не искать, выделяем файлы, жмём правую кнопку мыши и выбираем скопировать с помощью моей проги. Вот это будет правильно и красиво.


← →
allrussia   (2006-05-15 17:46) [4]

dracula

Реестр + ParamStr в программе

для реестра


r:=tregistry.create;
r.RootKey:=HKEY_CLASSES_ROOT;
r.OpenKey("\Folder\shell\Вывести на печать содержимое папки\command", true);
r.WriteString("","""+Application.ExeName+"" "%1"");
r.OpenKey("\Folder\shell\Вывести в Excel содержимое папки\command", true);
r.WriteString("","""+Application.ExeName+"" "%1"?");
r.Free;


а в коде программы:


for i := 1 to ParamCount do
if LowerCase(ParamStr(i)) <> "" then
if LastDelimiter("?",ParamStr(i)) <= 0 then
ShowMessageParamStr(i)
else
ShowMessage (copy (ParamStr(i),0,length(ParamStr(i))-1));
end;


при правом клике на любой папке проводника показывается сообщение с путем этой папки

скачай "delphi world" там куча примеров есть


← →
Poirot ©   (2006-05-15 17:52) [5]

Хм.. всётаки мне каца, что автор имел ввиду имено добавление файлов к рабочей копии приложения - аля винамп => Enqueue to Winamp:)


← →
allrusia   (2006-05-15 22:25) [6]

Poirot


> Хм.. всётаки мне каца, что автор имел ввиду имено добавление
> файлов к рабочей копии приложения - аля винамп => Enqueue
> to Winamp:)


пока что плохо кажется :) неудачная попытка, т.к.

dracula

А вот например человек захотел скопировать файлы, и чтоб не запускать прогу и там их не искать, выделяем файлы, жмём правую кнопку мыши и выбираем скопировать с помощью моей проги


← →
Leonid Troyanovsky ©   (2006-05-15 22:42) [7]


> dracula ©   (15.05.06 16:12) [3]

> файлы, жмём правую кнопку мыши и выбираем скопировать с
> помощью моей проги. Вот это будет правильно и красиво.


Explorer правильно и эстетично копирует файлы без посторонней помощи.

--
Regards, LVT.


← →
dracula ©   (2006-05-16 12:54) [8]

Нет моя программа копирует файлы с испорченых и поцарапаных дисков, поэтому explorer с ними не справляется.

2allrussia, нет к сожалению это не подходит так как добавляет всего один файл или папку - я так уже пробовал (даже делал через PostMessage и отправлял первой запущеной копии программы командную строку, но программа не успевает обрабатывать все файлы и некоторые пропускает). Надо именно через com чтоб можно было сразу несколько файлов. Winamp использует \Folder\shell и также c MP3, но у него есть ещё обработка списков - например я выделяю несколько папок и в меню выбираю скопировать с помощью млей проги, вот и надо список выделеных папок отправить моей программе. А вот как это делается?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.023 c
3-1146133045
linx
2006-04-27 14:17
2006.06.25
Получить значение генератора


1-1148073077
yahaha
2006-05-20 01:11
2006.06.25
Работа с HTML документом


15-1149056867
Новичоккк
2006-05-31 10:27
2006.06.25
Несколько TClientSocket


8-1137680930
misha_gr
2006-01-19 17:28
2006.06.25
Странная проблема с DsPack


1-1147853235
Шмель
2006-05-17 12:07
2006.06.25
Сортировка




   Наверх