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

Вниз

Stream.Seek Stream.Position возвращает ноль.   Найти похожие ветки 

 
rioko   (2012-08-02 10:54) [0]


   FromF := TFileStream.Create(pp + "UserData\" + BaseName + "DB.db", fmOpenRead);
    Application.ProcessMessages();
   try
       ToF := TFileStream.Create(DirToRepack + "\" + FileName, fmCreate);
        end;
     try
        FromF.Seek(BeginByte, soFromBeginning);

       ShowMessage("Seek(BeginByte \  "+inttostr(FromF.Position) +" \ "+inttostr(BeginByte));

       Application.ProcessMessages();

       ToF.CopyFrom(FromF, RecFileSize);
     finally
       ToF.Free;
     end;
   finally
     FromF.Free;
   end;


Так вот, все прекрасно работает если файл менее полутора гигабайт, а когда больше то после выполнения Seek при проверке
ShowMessage("Seek(BeginByte \  "+inttostr(FromF.Position) +" \ "+inttostr(BeginByte));
показывает что позиция ноль.

Что делать? Записывается то нормально а вот как прочесть данные и почему сик не работает если там int64 и длины хватает в любом случае?


 
Cobalt ©   (2012-08-02 15:36) [1]

Удалено модератором
Примечание: создание пустых сообщений


 
Rouse_ ©   (2012-08-02 18:59) [2]

Вместо Seek используй свойство Position


 
rioko   (2012-08-02 19:42) [3]

Rouse_

Спасибо большое :)


 
DVM ©   (2012-08-03 22:47) [4]


> rioko   (02.08.12 10:54) 


>  и почему сик не работает если там int64 и длины хватает
> в любом случае?

Работает он, но там есть два перегруженных метода Seek принимающие разные типы второго параметра.


 
Palladin ©   (2012-08-04 01:39) [5]

)

function TStream.GetPosition: Int64;
begin
 Result := Seek(0, soCurrent);
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
6-1281946428
PonosetcDM
2010-08-16 12:13
2017.01.15
Indy в Internet


2-1431075632
Caxap906
2015-05-08 12:00
2017.01.15
Загрузка изображений из интернета


2-1418918004
AlexeyTG
2014-12-18 18:53
2017.01.15
Просьба оценит "корявость кода"


2-1420537491
Enzain
2015-01-06 12:44
2017.01.15
От какого пользователя запущено приложение.


6-1282282725
RGV
2010-08-20 09:38
2017.01.15
POP3