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

Вниз

Имеет ли функция CopyFile проблемы с многопоточностью и проч.?   Найти похожие ветки 

 
Aleksandr.   (2004-10-08 16:01) [0]

Несколько потоков из одной общей папки копируют файлы в другую общую папку

 if Windows.CopyFile(PChar( NameFrom), PChar( NameTo),false) then
 DoSomeThing
else if NOT FileExists(NameFrom) then
   raise Exception.Create(Format("Source file %s doesn""t exists!",[NameFrom]))
else if FileExists(NameTo) then
   raise Exception.Create(Format("Destination file %s already exists!",[NameTo]))
else
 raise Exception.Create("Can""t copy file!")

И время от времени эта функция возвращает результат false при заведомо существующем NameFrom и несуществующем NameTo. Имена файлов для каждого потока уникальны. Вот я и подумал - может, у этой функции есть проблемы с многопоточным копированием между двумя папками? Закономерностей в отказе копирования я не обнаружил.


 
Reindeer Moss Eater ©   (2004-10-08 16:05) [1]

Getlasterror знает всю правду.


 
Reindeer Moss Eater ©   (2004-10-08 16:11) [2]

при заведомо существующем NameFrom и несуществующем NameTo.

Заведомое существование определяется не человеческим зрением а как раз результатом FileExists


 
Aleksandr.   (2004-10-08 16:31) [3]

Reindeer Moss Eater © :


Заведомое существование определяется не человеческим зрением а как раз результатом FileExists


А разве по приведенному коду не видно, что я основываюсь именно на FileExists, а не на человеческом зрении?


 
Reindeer Moss Eater ©   (2004-10-08 16:35) [4]

А нафига тогда заявлять, что при этом файл NameFrom заведомо существует?


 
Anatoly Podgoretsky ©   (2004-10-08 16:41) [5]

И какая ошибка?


 
Digitman ©   (2004-10-08 16:45) [6]


> Aleksandr


дурью-то не майся

если Windows.CopyFile() вернула отказ, то первое, что ты должен сделать - определить его причину, запросив код отказа вызовом GetLastError

ты же вместо этого далее по коду ударяешься в какие-то сомнительные инсинуации, кто там exists , а кто не exists ..



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

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

Наверх




Память: 0.48 MB
Время: 0.035 c
14-1097150551
Lool
2004-10-07 16:02
2004.10.24
Еще одна задача


8-1085750766
Bruno
2004-05-28 17:26
2004.10.24
Как вырезать из AVI отдельные кадры в bmp, jpeg....


14-1096884524
WondeRu
2004-10-04 14:08
2004.10.24
Diamondback (delphi 9) - новая версия!


3-1096361272
Fishka
2004-09-28 12:47
2004.10.24
DBRichEdit и ADODataSet - ??? управляющие символы в таблице


3-1096106628
Сол
2004-09-25 14:03
2004.10.24
DBGrid + Word