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

Вниз

FileExists(myfName)   Найти похожие ветки 

 
opoloXAI   (2008-06-06 15:51) [0]

Добрый день.
На HDD ТОЧНО есть файл myfName (причём путь к этому файлу указан и он правильный). Функция FileExists(myfName) возвращает (как и положено) true. Всё OK.
НО вопрос просто абсурдный: функция FileExists(myfName) возвращает false, когда я открываю этот файл: он состоит из текста (примерно 20%) и остальное $FF = размер файла 256Кб (если надо могу выслать по почте но правда ближе к вечеру). Не работает именно этот файл. {другими приложениями этот файл не открыт} В чём моя ошибка?


 
Ega23 ©   (2008-06-06 16:53) [1]

как открываешь?


 
ЮЮ ©   (2008-06-07 04:55) [2]

> Функция FileExists(myfName) возвращает (как и положено)
> true. Всё OK.
> НО вопрос просто абсурдный: функция FileExists(myfName)
> возвращает false


Ничего не понял. Так что она возвращакт?
Или ты пытаещься «открыть» файл и тогда, когда возвращает false?


 
Renegat   (2008-06-07 09:12) [3]

> Или ты пытаещься «открыть» файл и тогда, когда возвращает false?

Нет. Когда он не ещё открыл этот файл, функция возвернёт ему 1. А когда открыл - уже не 1, а 0, хотя файл же есть - вот он, открытый!


 
Loginov Dmitry ©   (2008-06-07 09:29) [4]

Кто еще помимо твоей программы работает (либо может работать) с этим файлом?
Где ответ на [1]? Приведи код открытия файла. Как используешь файл (чтение / запись)?
Что будет, если сделать копию файла в другом каталоге и работать с нею?


 
jack128_   (2008-06-07 15:43) [5]

ну забей на FileExists и напиши свою на основе FindFirstFile...

Если интересно разобраться вызови для открытого файла GetFileAttributes и проверь результат его выполнения на ошибку (RaiseLastOSError + F1)


 
opoloXAI   (2008-06-09 08:32) [6]

Я заренее знал, что вопрос слишком "глупый". Но этот глюк реально существует. Я уверен. (Может когода-нибудь ещё кто-то нарвётся).
Я заменил FileExists()  на:
function  myFileExists(fName: String): Boolean;
var SRec: TSearchRec;
begin
    If FindFirst(fName,faAnyFile,SRec)=0 then Result:=true
                                         else Result:=false;
end;
и теперь все работает как часы. Большое всем спасибо.


 
Anatoly Podgoretsky ©   (2008-06-09 09:19) [7]

> opoloXAI  (09.06.2008 8:32:06)  [6]

Глюк только в голове


 
Loginov Dmitry ©   (2008-06-09 09:51) [8]

> Я заменил FileExists()  на:
> function  myFileExists(fName: String): Boolean;
> var SRec: TSearchRec;
> begin
>    If FindFirst(fName,faAnyFile,SRec)=0 then Result:=true
>                                         else Result:=false;
>
> end;
> и теперь все работает как часы. Большое всем спасибо.


Закрывать поиск кто будет?


> Я заренее знал, что вопрос слишком "глупый". Но этот глюк
> реально существует.


см. [7]


 
opoloXAI   (2008-06-09 12:22) [9]

спасибо Loginov Dmitry: FindClose(SRec); забыл.



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

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

Наверх




Память: 0.49 MB
Время: 0.018 c
2-1212828887
AlekseyB
2008-06-07 12:54
2008.07.06
помогите написать процедуру


11-1189512903
SergeR
2007-09-11 16:15
2008.07.06
Вопрос по KOLmdvShellControls


2-1212608338
kami
2008-06-04 23:38
2008.07.06
Как организовать одновременное чтение из COM-порта


2-1212864651
ply
2008-06-07 22:50
2008.07.06
сделать первую букву заглавной


2-1212966315
Res
2008-06-09 03:05
2008.07.06
потоки