Вниз
Скачать: 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.012 c
14-37371
Дмитрий К.К.
2002-12-25 06:16
2003.01.13
Именинники 25 декабря


1-37068
Gayrus
2003-01-01 16:43
2003.01.13
String в TStream


14-37321
Феликс
2002-12-21 01:48
2003.01.13
Какая у вас национальность?


4-37470
Дед Анвирыч
2002-11-27 10:01
2003.01.13
MCI - Video Capture


1-37076
Gamar
2003-01-03 12:32
2003.01.13
Имя версии через директивы




   Наверх