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

Вниз

FIBPlus: сохраняю Stream в Blob-поле, получаю AV   Найти похожие ветки 

 
ari_9   (2007-11-07 19:56) [0]

хочу хранить настройки cxGrid"a, такие как порядок столбцов, видимость, ширину, сортировку и т.д. в БД. благо, уже есть соответствующий метод для cxGridTableView/cxGridDBTableView - StoreToStream. записать в БД пытаюсь методом LoadFromStream компонента FIBDataSet

код выглядит примерно так


   try
     my_cxGridDBTableView.StoreToStream(AStream);
     with my_pFIBDataSet do
     begin;
       Edit;
       TBlobField(FieldByName("TABLE_VIEW_SETTINGS")).LoadFromStream(AStream);
       Post;
     end;
   finally
     AStream.Free;
   end;


на выделенной строке получаю AV - EAccessViolationAccess violation at address 006E06A7 in module "my_project.exe". Read of address 00000000

код основан на примере использования Blob"ов в FIBPlus - http://devrace.com/ru/fibplus/articles/4867.php

если сохранять поток, полученный от вью, в файл, он корректно пишется. где копать ?

p.s. объясните пожалуйста. есть ли принципиальная разница между такими методами работы с Blob"ами :

var
 AStream, SStream: TStream;
....
       SStream := CreateBlobStream(FieldByName("TABLE_VIEW_SETTINGS"), bmReadWrite);
       SStream.CopyFrom(AStream, AStream.Size);


и

 AStream: TStream;
....
TBlobField(FieldByName("TABLE_VIEW_SETTINGS")).LoadFromStream(AStream)


 
KilkennyCat ©   (2007-11-08 01:12) [1]

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


 
Сергей М. ©   (2007-11-08 10:44) [2]


> есть ли принципиальная разница


Есть.

Цитата из справки к методу TBlobStream.LoadFromStream:

Note:
The Stream parameter is typically not a BLOB stream. BLOB streams (returned by the dataset’s CreateBlobStream method) provide a completely separate mechanism for streaming data into a BLOB field.



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
2-1194697560
alikon1
2007-11-10 15:26
2007.12.02
Конвертирование из поля Edit в нормальный знак.


15-1193772030
Михаил5
2007-10-30 22:20
2007.12.02
Подскажите разводку кросс-кабеля


15-1193506385
Parus
2007-10-27 21:33
2007.12.02
telnet server под linux


6-1175189724
проходивший мимо
2007-03-29 21:35
2007.12.02
передать файлы через сеть


11-1178978783
_vadim
2007-05-12 18:06
2007.12.02
KOLDirDlgEx