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

Вниз

olecontainer и blobstream   Найти похожие ветки 

 
so_well   (2003-07-16 15:15) [0]

Помогите, пожалуйста, уже второй день бьюсь!!!!
мне нужно из blob поля поместить в olecontainer документ
пробовал разными путями создавать поток, вот например
если так:
procedure TForm1.Button1Click(Sender: TObject);
var b : TBlobStream;
begin
b:=TBlobStream.Create(IBTable1.FieldByName("DATA") as TBlobField, bmRead);
OLEContainer1.LoadFromStream(b as TStream);
b.Free;
Close;
end;
то выдает invalid class typecast
если так:
procedure TForm1.Button2Click(Sender: TObject);
var s: TBlobStream;
begin
s:= TBlobStream( (ibTable1).CreateBlobStream((ibTable1).FieldByName("DATA"), bmReadWrite));;
OLEContainer1.LoadFromStream(s as TStream);
end;
выдает invalid stream format


заранее спасибо


 
Serginio   (2003-07-16 15:29) [1]

Посмотри исходники OLEContainer1.LoadFromStream.
Дело в том, что OLEContainer1 еще записывает и собственную информацию, и соответственно пытается ее прочитать. Если данные были сохранены не OLEContainer1 получишь не то,что хотел. Тоесть чтение и запись должны происходить через OLEContainer1. Либо неправильно установлен COM объект который читает данный стрим


 
so_well   (2003-07-16 16:16) [2]

а что, если я запишу документ в базу через loadfromfile без использования контейнера, то он потом такую информацию не поймет?


 
Serginio   (2003-07-16 16:22) [3]

Еще раз смотри исходники. Сам все поймешь. И обрати внимание на
Header: TStreamHeader;
Если хочешь сделай потомка и записывай и читай как тебе надо.


 
so_well   (2003-07-17 07:46) [4]

В общем да, при сохранении в блоб через оле потом обратно получилось


 
so_well   (2003-07-17 07:49) [5]

спасибо :)



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-100633
Black Shark
2003-07-10 12:38
2003.07.31
Динамический массив и БД


6-100847
Snap
2003-05-23 00:31
2003.07.31
tracert и им подобные


1-100772
Alex-21
2003-07-15 20:41
2003.07.31
Ctrl+любая клавиша


14-100959
nick-from
2003-07-14 20:20
2003.07.31
17 элт монитор


3-100554
rosl
2003-07-08 01:52
2003.07.31
sql