Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Вниз

Нужна помощь!!!!!!   Найти похожие ветки 

 
anton_private   (2003-10-01 13:09) [0]

Итак
Есть две функции

function TMainForm.IsValidFile(SearchRec: TSearchRec): Boolean;
begin
if (SearchRec.Name<>".") and (SearchRec.Name<>"..") then Result:=True
else Result:=False;
end;

function TMainForm.IsValidDirectory(SearchRec: TSearchRec): Boolean;
begin
if ((SearchRec.Attr and faDirectory) = faDirectory) and
(SearchRec.Name<>".") and (SearchRec.Name<>"..") then Result:=True
else Result:=False;
end;

далее при сканировании каталога делаю следующее (в рамках моей процедуры CopyDir)

F : TSearchRec;
............
............
............
if FindFirst(SDir+"*.*",faDirectory,F) = 0 then
begin
if (F.Attr<>faDirectory) or (F.Attr<>faAnyFile)then
begin
while FindNext(F)=0 do
begin

if IsValidDir(F) then
begin
TmpDir:=NormalDir(SDir)+string(F.Name);
N:=NormalDir(DestDir)+string(F.Name);
if (F.Name<>".") and (F.Name<>"..")
then CopyDir(TmpDir,N);
end;
if IsValidFile(F) then
begin CopyFile(PChar(NormalDir(SDir)+string(F.Name)),
PChar(NormalDir(DestDir)+string(F.Name)),True);
G.Progress:=G.Progress+F.Size;
MainForm.Repaint;
end;
end;
end;
FindClose(F);

При этом копируются ТОЛЬКО файлы. Дир не копируются, не говоря уже об их содержимом))))

В ЧЁМ Я НЕ ПРАВ?

Спасибо всем отКЛИКнувшимся?


 
ZEE   (2003-10-01 13:16) [1]

во-первых: зачем F.Attr<>faAnyFile ?
во-вторых: у тебя сразу за FindFirst() идет FindNext() - т.е. при первый найденый файл добавляться не будет
в-третьих: G.Progress:=G.Progress+F.Size;, а где G.MaxValue:= ? (G я так понял это TGauge)


 
anton_private   (2003-10-01 13:23) [2]

2ZEE

Вообщем замечания ценные. Посмотрю

Но они не отвечают на основной вопрос
Почему не копируются директории???



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

Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
1-40385
Евгыш
2003-10-01 08:37
2003.10.13
Включение формы из DLL в форму приложения


3-40292
chesh
2003-09-19 13:07
2003.10.13
Поиск с помощью Seek (AdoTable) по dbf таблице


1-40511
killer
2003-10-01 20:24
2003.10.13
Вопросс по ProgressBar


1-40357
lovres
2003-10-01 15:05
2003.10.13
CheckBox в яцейке DBGrid.


1-40392
denis24
2003-10-01 09:47
2003.10.13
плавное исчезновение одной формы и появление другой





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский