Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.15;
Скачать: CL | DM;

Вниз

Как удалить каталог програмно ??????   Найти похожие ветки 

 
wdsergius   (2003-09-02 12:35) [0]

Добрый день всем всем всем.
Подскажите пожалуйста, как удалить программно любой каталог???
Пробовал с помощью функции
RemoveDir(const Dir:string):boolean;
не получается, просто возвращает False и всё тебе !!!
и каталог на месте , и файлов в нём нема и удаляемый, а не удаляется !!!!!!! Чё делать !!!
Подскажите пожалуйста !!!


 
Мал0й   (2003-09-02 12:40) [1]

Function MyRemoveDir(sDir : String) : Boolean;
var

iIndex : Integer;

SearchRec : TSearchRec;

sFileName : String;


begin
Result := False;

sDir := sDir + "\*.*";

iIndex := FindFirst(sDir, faAnyFile, SearchRec);

while iIndex = 0 do


begin


sFileName := ExtractFileDir(sDir)+"\"+SearchRec.Name;

if SearchRec.Attr = faDirectory then


begin


if (SearchRec.Name <> "" ) and (SearchRec.Name <> ".") and (SearchRec.Name <> "..") then MyRemoveDir(sFileName);


end


else


begin


if SearchRec.Attr <> faArchive then FileSetAttr(sFileName, faArchive);

if NOT DeleteFile(sFileName) then ShowMessage("Could NOT delete " + sFileName);


end;


iIndex := FindNext(SearchRec);


end;


FindClose(SearchRec);

RemoveDir(ExtractFileDir(sDir));

Result := True;


end;


 
Мал0й   (2003-09-02 12:41) [2]

Или

uses ShellApi;
...
var sh : SHFILEOPSTRUCT;
begin
...

sh.Wnd := Application.Handle;

sh.wFunc := FO_DELETE;

sh.pFrom := "c:\\test\0";

sh.pTo := nil;

sh.fFlags := FOF_NOCONFIRMATION or FOF_SILENT;

sh.hNameMappings := nil;

sh.lpszProgressTitle := nil;



SHFileOperation (sh);

...



Надо путь писать : c:\\test\dfg
Чтобы вначале "\\" было...иначе не будет удалять диры из корня
Взято с Vingrad.ru http://forum.vingrad.ru


 
Андрей Сенченко ©   (2003-09-02 12:49) [3]

Дело было не в бобине ...

begin
Mkdir("C:\88");
If RemoveDir("C:\88") Then Showmessage ("ok");
end;


Только что отработало - мама не горюй.

Проверь FindFirst-ом эту директорию в плане найти там скрытые файлы.



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

Текущий архив: 2003.09.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
14-48749
Knight
2003-08-26 08:06
2003.09.15
Miranda рулит...


6-48670
nester
2003-07-09 16:59
2003.09.15
Как в TWebBrowser получить header ответа сервера


8-48653
Sender
2003-05-16 12:07
2003.09.15
MIDI


3-48425
Andrey V.
2003-08-22 23:09
2003.09.15
Компонент TIBTransaction, один или больше ?


1-48584
Леша
2003-09-04 02:11
2003.09.15
Запретить Alt + F4 форме, а при нажатии на кнопку разрешить...