-
Можно функцией API. Средствами дельфей, как я понял, нужно сначала ее всю вычистить, а только потом грохнуть? Если можно, то пример кода, пожалуйста, приведите.
-
Попробуй SHFileOperation, чтобы узнать как она раборает набери SHFILEOPSTRUCT и на ней нажми F1
-
Вот примеры удаления каталога со всем содержимым:
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;
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;
-
угораздило меня начать писать программу в Делфи 2005 - это один сплошной геморой какой-то!!! Вся программа перекроена не пойми как.
Не понимает она этих функций. Никак не получается удалить програмно этот гребаный каталог с файлами...!!!
Да и вообще. Большинство команд она не понимает (которые в делфи7 и делфи2009, к примеру, работают).
|