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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2017, 10:40   #21
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,451
По умолчанию

Цитата:
Сообщение от Aliens_wolfs Посмотреть сообщение
удаляет в ней все содержимое и папки и каталоги
показывает, что: Не могу удалить файл; Не могу удалить каталог:

Код:
if IOResult<>0 then begin 
ShowMessage("Не могу войти в каталог: "+Dir); exit; 
end; 
Found := FindFirst("*.*", faAnyFile, SearchRec); 
while Found = 0 do 
begin 
if (SearchRec.Name<>".")and(SearchRec.Name<>"..") then 
if (SearchRec.Attr and faDirectory)<>0 then begin 
if not DeleteDir(SearchRec.Name) then exit; 
end else 
if not DeleteFile(SearchRec.Name) then begin 
ShowMessage("Не могу удалить файл: "+SearchRec.Name); exit; 
end;
beegl вне форума Ответить с цитированием
Старый 04.01.2017, 11:01   #22
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

Цитата:
показывает, что: Не могу удалить файл; Не могу удалить каталог:
В папке Temp не все можно удалить так как есть файлы заняты системой или кэшь программ, что бы все удалять нужно выгружать из памяти но это может быть крахом системы так как там есть файл подкачки памяти

Цитата:
добчас, помогите добавить средствами API (чтоб прект не увеличивался) ещё ''до кучи'' очистку временных папок C:/Temp и C:/Windows/Temp
Вот с помощью ShellAPI

Код:
//Найти папку Temp
function _GetTempPath: string;
begin
SetLength(result, MAX_PATH);
SetLength(result, GetTempPath(MAX_PATH, PChar(result)));
end;

// Удаление методом ShFileOperation удаляет все содержимое вместе с назначенной папкой
function Deletes(srcDir: string): boolean;
var
  fos : TSHFileOpStruct;
  St : String;
begin
  St := srcDir + #0;
  FillChar(fos, SizeOf(fos), 0);
  with fos do
  begin
    wFunc := FO_DELETE;
    pFrom := PChar(St);
    fFlags := FOF_NOCONFIRMATION or FOF_SILENT;
  end;
 Result := (0 = ShFileOperation(fos));
end;
применить Deletes(_GetTempPath); temp не удалит но многое удалит но не все

Да и вообще новую тему не хотите начать, а то этой уже много лет, да и вопросы тут уже другие)

Последний раз редактировалось Aliens_wolfs; 04.01.2017 в 11:16.
Aliens_wolfs вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка из буфера в чужое приложение Denager Общие вопросы Delphi 2 20.09.2008 13:24
печать из буфера Марксист Общие вопросы Delphi 2 28.07.2008 14:00
неформатированный текст из буфера в TWebBrowser? element Компоненты Delphi 0 09.12.2007 11:46
TWebBorwser - страничка из буфера OrdJONY Работа с сетью в Delphi 6 09.11.2007 18:56