Форум: "Начинающим";
Текущий архив: 2008.07.06;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.048 c