Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2013, 12:52   #1
GRIZZLY85
 
Регистрация: 03.02.2013
Сообщений: 3
По умолчанию ShellAPI, удаление группы выделенных файлов или папок

Здравствуйте, помогите пожалуйста разобраться с этой проблемой..я новичок ы этом деле, не могу сообразить как удалить группу выделенных файлов в корзину Что надо добавить или изменить в этом коде?
Код:
procedure TForm1.Delete1Click(Sender: TObject);
var
SF: TShellFolder;
FPath: String;
FOS: TSHFileOpStruct;
FileOp: HRESULT;
begin
With FOS do
begin
SF:= ShellListView1.SelectedFolder;
If System.Assigned(SF) then
begin
FPath:= ShellListView1.SelectedFolder.PathName + #0 + #0;
FOS.Wnd:= Application.Handle;
FOS.wFunc:= FO_DELETE;
FOS.pFrom:= @FPath[1];
FOS.pTo:= 0;
FOS.fFlags:= FOF_ALLOWUNDO or FOF_SILENT;
FOS.fAnyOperationsAborted:= False;
FOS.hNameMappings:= 0;
FOS.lpszProgressTitle:= 0;
end;
FileOp:= SHFileOperation(FOS);
end;
ShellListView1.Refresh;
end;


___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось GRIZZLY85; 04.02.2013 в 13:03.
GRIZZLY85 вне форума Ответить с цитированием
Старый 12.02.2013, 18:42   #2
GRIZZLY85
 
Регистрация: 03.02.2013
Сообщений: 3
Злость

Здравствуйте, пожалуйста помогите!!! Как удалить выделенные папки или файлы
Код:
procedure TForm1.Delete1Click(Sender: TObject);
var
SF: TShellFolder;
FPath: String;
FOS: TSHFileOpStruct;
FileOp: HRESULT;
begin
With FOS do
begin
SF:= ShellListView1.SelectedFolder;
If System.Assigned(SF) then
begin
FPath:= ShellListView1.SelectedFolder.PathName + #0 + #0;
FOS.Wnd:= Application.Handle;
FOS.wFunc:= FO_DELETE;
FOS.pFrom:= @FPath[1];
FOS.pTo:= 0;
FOS.fFlags:= FOF_ALLOWUNDO or FOF_SILENT;
FOS.fAnyOperationsAborted:= False;
FOS.hNameMappings:= 0;
FOS.lpszProgressTitle:= 0;
end;
FileOp:= SHFileOperation(FOS);
end;
ShellListView1.Refresh;
end;
вот таким образом выделять папки
заранее большое спасибо за помощь!
Изображения
Тип файла: jpg 1.jpg (77.5 Кб, 138 просмотров)
GRIZZLY85 вне форума Ответить с цитированием
Старый 28.02.2013, 20:18   #3
GRIZZLY85
 
Регистрация: 03.02.2013
Сообщений: 3
По умолчанию

давно разобрался, код правильный, а надо было только и всего дописать вот здесь путь
Код:
FPath:= ShellListView1.SelectedFolder.PathName + #0 + FPath + #0;
и вся любовь
GRIZZLY85 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление выделенных элементов в TreeView evgenidem Компоненты Delphi 2 25.11.2009 16:37
Копирование нескольких файлов с помощью ShellAPI Paul Hindenburg Общие вопросы Delphi 10 13.07.2009 12:21
Как запустить приложение через список выделенных файлов simpolmix Общие вопросы Delphi 3 07.05.2009 23:14
Текстовый редактор для открытия всех файлов в выделенных папках, подпапках. Alar Софт 5 20.01.2009 16:25
Как получить имена нескольких файлов выделенных в OpenDialog Comer_Jus Общие вопросы Delphi 2 26.05.2008 19:47