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

Вниз

Не копируется открытый файл DBF   Найти похожие ветки 

 
kyn66 ©   (2009-01-22 11:59) [0]

Уважаемые мастера, подскажите в чем проблема и как ее решить. На сервере лежат БД программы . Программа открывает базы для работы. В среде TotalCommander я этот файл спокойно могу копировать на другой диск. Внутри своей программы пытаюсь копировать - выдает ошибку, точнее не копирует, а последующее обращение к якобы скопированному файлу вадает ошибку, т.к. файла то нет. Копируб так:

CopyFile(DM1.AdsConnection3.ConnectPath + "\skod.dbf", TempDir + "skod.dbf", nil);


 
Правильный$Вася   (2009-01-22 12:15) [1]

Return Values

If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.


 
kyn66 ©   (2009-01-22 12:22) [2]

>2Правильный$Вася
Ну и к чему это? Про возвращаемые параметры я в курсе.


 
Правильный$Вася   (2009-01-22 12:51) [3]


> Про возвращаемые параметры я в курсе.

что-то не видно, чтоб ты анализировал результат
да и вообще при копировании открытых на запись файлов их состояние неизвестно, так зачем нужны эти недобитки?


 
Плохиш ©   (2009-01-22 12:51) [4]

If the function fails, the return value is zero. To get extended error information, call GetLastError.
Там написана причина.
Хотя, судя по

> а последующее обращение к якобы скопированному файлу вадает
> ошибку

утверждение
Про возвращаемые параметры я в курсе.
является ни чем иным, как "слышал звон, а не знаешь, где он"...


 
kyn66 ©   (2009-01-22 12:55) [5]

Все, решение найдено, копирование через потоки.


 
Anatoly Podgoretsky ©   (2009-01-23 10:02) [6]


> да и вообще при копировании открытых на запись файлов их
> состояние неизвестно, так зачем нужны эти


> Все, решение найдено, копирование через потоки

Аминь


 
KSergey ©   (2009-01-23 11:00) [7]

хоть беда и решена.

беда не в потоках (да и сила не в них)
Беда в том с какими опциями открывать исходный файл.
Очевидно надо открывать с минимальными достаточными, т.е. "только чтение" + "шредный доступ" (не эксклюзивно).

По умолчанию файл открывается эксклюзивно, но та прога его уже открыла, но она добрая и открыла шаредно, т.е. нам надо поступить так же.



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
15-1231438102
Городской Шаман
2009-01-08 21:08
2009.03.15
Научная магия


2-1232617282
nst1974
2009-01-22 12:41
2009.03.15
создание клиент серверные части БД


4-1206457103
Informer
2008-03-25 17:58
2009.03.15
Кнопка закрытия формы


15-1231656099
vvrz
2009-01-11 09:41
2009.03.15
Delphi и Windows Mobile


3-1215428978
nemirof
2008-07-07 15:09
2009.03.15
Переделка проекта с Paradox в Interbase/Firebird