Конференция "FreePascal" » Как удалить папку вместе со всем ее содержимым?
 
  • DimonS © (10.06.05 05:42) [0]
    Можно функцией API.
    Средствами дельфей, как я понял, нужно сначала ее всю вычистить, а только потом грохнуть? Если можно, то пример кода, пожалуйста, приведите.
  • Warlock © (10.06.05 06:28) [1]
    Попробуй SHFileOperation, чтобы узнать как она раборает набери SHFILEOPSTRUCT и на ней нажми F1
  • GLFox © (08.07.05 21:05) [2]
    Вот примеры удаления каталога со всем содержимым:

    procedure DeleteDir1();
    var
     DirInfo: TSearchRec;
     r: integer;
    begin
     r := FindFirst('C:\Download\*.*', FaAnyfile, DirInfo);
     while r = 0 do begin
       if ((DirInfo.Attr and FaDirectory <> FaDirectory) and
          (DirInfo.Attr and FaVolumeId <> FaVolumeID))
       then
         if not DeleteFile(pChar('C:\Download\' + DirInfo.Name)) then
           ShowMessage('Unable to delete: C:\Download\'+DirInfo.Name);
       r := FindNext(DirInfo);
     end;
     SysUtils.FindClose(DirInfo);
     if not RemoveDirectory('C:\Download\') then
       ShowMessage('Unable to delete directory: C:\Download\');
    end;

    { WinAPI }
    procedure procedure DeleteDir2();
    var lpFileOp: TSHFileOpStruct;
    begin
     FillChar(lpFileOp,SizeOf(lpFileOp),0);
     lpFileOp.Wnd := Handle;
     lpFileOp.wFunc := FO_DELETE;
     lpFileOp.pFrom := PChar(Edit1.Text);
     lpFileOp.fFlags := FOF_NOCONFIRMATION;
     SHFileOperation(lpFileOp);
    end;

  • вася (16.01.16 22:34) [3]
    угораздило меня начать писать программу в Делфи 2005 - это один сплошной геморой какой-то!!! Вся программа перекроена не пойми как.

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

    Да и вообще. Большинство команд она не понимает (которые в делфи7 и делфи2009, к примеру, работают).
 
Конференция "FreePascal" » Как удалить папку вместе со всем ее содержимым?
Есть новые Нет новых   [134427   +38][b:0][p:0.001]