Вниз
Скачать: CL | DM;

Вопрос по TFileStream.Create   Найти похожие ветки 

← →
Dennis S ©   (2003-01-03 10:01) [0]

При выполнении в Win"98 и WinME
fs := TFileStream.Create(OpenF.FileName, fmOpenRead, fmShareDenyNone); все пучком, а под Win"2К, при открытии начинает исчезать свободное место на диске(на размер выбранного файла)... :(
Кто-нить знает ПОЧЕМУ и как этого избежать?


← →
Anatoly Podgoretsky ©   (2003-01-03 10:05) [1]

У TFileStream.Create всего два параметра


← →
Dennis S ©   (2003-01-03 10:08) [2]

Ты имеешь в виду, что у меня мало или много (параметров)?


← →
Anatoly Podgoretsky ©   (2003-01-03 10:12) [3]

Ну я думаю ты можешь сам посчитать количество приведенных тобой параметров и сделать вывод мало их или много. Но если не справишься, то спрашивай еще.


← →
Dennis S ©   (2003-01-03 10:43) [4]

Ну да, в хелпе вроде только 2...
Поставил
fs := TFileStream.Create(OpenF.FileName, fmOpenRead or fmShareDenyRead);
Вроде работает (но сообщения об ошибках при доступе к файлу изменились)
Хотя, то что писал с начала, было взято с какой-то конфы или FAQ
Не могу сейчас проверить под Win2K...


← →
Anatoly Podgoretsky ©   (2003-01-03 10:47) [5]

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


← →
Dennis S ©   (2003-01-03 11:20) [6]

Тогда такой вопрос:
почему со старым кодом ("неправильным") под Win98 и WinME все "пахало", а под Win2K рос какой-то temp-файл или еще что-то неадекватное...?


← →
Anatoly Podgoretsky ©   (2003-01-03 11:25) [7]

Со старым кодом у тебя и откиомпилороваться бы не смогло


← →
Dennis S ©   (2003-01-03 11:28) [8]

Однако откомпелировалось и работало - ФАКТ!
???


← →
Dennis S ©   (2003-01-03 11:32) [9]

Потому как есть 3 вида c TFileStream.Create
1: (FileName, Mode)
2: (FileName, Mode, Rights)
3: (AHandle)

так-то вот...
Сначало, значит был вариант 2, сейчас - 1...


← →
Anatoly Podgoretsky ©   (2003-01-03 11:36) [10]

Возможно, что в Д6 появились перекрытые функции


← →
Dennis S ©   (2003-01-03 11:55) [11]

Может быть это было из-за этого:
[Warning] main.pas(67): Symbol "fmShareDenyRead" is specific to a platform
???


← →
Dennis S ©   (2003-01-03 11:59) [12]

Это относится к 2: (FileName, Mode, Rights)
fs := TFileStream.Create(OpenF.FileName, fmOpenRead, fmShareDenyRead);

1-ый вариант...
fs := TFileStream.Create(OpenF.FileName, fmOpenRead or fmShareDenyRead);
...проходит без сообщений компилятора



← →
Dennis S ©   (2003-01-03 12:01) [13]

Извиняюсь, сообщение и в том и в другом варианте..... :(



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.015 c
4-37451
XED
2002-11-25 15:28
2003.01.13
Иконки рабочего стола


3-36962
Sergey_Elf
2002-12-18 12:57
2003.01.13
Отчего может быть Access violation at adress 00000007. Read of ad


1-37162
NewGuest
2002-12-29 15:33
2003.01.13
С наступающим вас!!! Подскажите на кануне.... plz


8-37222
Hooch
2002-09-25 08:28
2003.01.13
Графическая библиотека


3-36996
Влад2
2002-12-18 13:01
2003.01.13
Сбой реструктуризации при попытке открытия таблицы




   Наверх