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

Invalid class typecast   Найти похожие ветки 

 
DelphiNew   (2005-06-21 15:44) [0]

Есть вот такая процедура:

var
BlobStream: TBlobStream;
StrStream: TStringStream;
s: string;
begin

BlobStream:=TBlobStream.Create(IBQFndProc.fieldByname("OBJ_BODY")
 as TBlobField, bmRead);
StrStream := TStringStream.Create(s);
try
 ObjectBinaryToText(BlobStream, StrStream);
 s:=StrStream.DataString;
finally
 StrStream.Free;
 BlobStream.Free;
end;

FormProc:= TFormProc.Create(self);
FormProc.Memo1.lines.text:= s;
FormProc.Show;
end;
При попытке выполнения строчки BlobStream:=TBlobStream.Create(IBQFndProc.fieldByname("OBJ_BODY")as TBlobField, bmRead); вылетает ошибка Invalid class typecast. В чём может быть причина?


 
Ega23 ©   (2005-06-21 15:53) [1]


procedure TCustomGfxDBConnector.AddGfxObject;
var
ms:TMemoryStream;
GfxTag:TGfxTagStruct;
GfxPoly:TGFXPolyObject;
begin
ms:=TMemoryStream.Create;
try
 if TBLOBField(FDataLink.DataSet.FieldByName(DataField)).IsNull then Exit;
 //DataSource.DataSet.FieldByName(DataField).

 TBLOBField(FDataLink.DataSet.FieldByName(DataField)).SaveToStream(ms);

 ms.Position:=0;
 ms.ReadBuffer(GfxTag, SizeOf(TGfxTagStruct));

 ms.Position:=GfxTag.Offset;
 if GfxTag.Tag<>GFXTAG_TYPE then Exit;
 Case GfxTag.wParam of
  POLY_OBJECT          : begin
                          GfxPoly:=TGFXPolyObject.Create;
                          GfxPoly.LoadFromStream(ms);
                          GfxPoly.UID:=FDataLink.DataSet.FieldByName(IDField).AsInteger;
                          FGFXDrawer.AddObject(GfxPoly);
                         end;
  RASTER_OBJECT        : begin
                          //
                         end;

 end;

finally
 ms.Free;
end;

end;


 
DelphiNew   (2005-06-21 15:57) [2]

Спасибо попробую



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

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



Память: 0.45 MB
Время: 0.022 c
1-1121338649
webpauk
2005-07-14 14:57
2005.07.31
Свойства файла


1-1120944230
MAVr
2005-07-10 01:23
2005.07.31
Как достать свойства файла?


3-1118918229
DelphiN!
2005-06-16 14:37
2005.07.31
SQL отнимающий содержимое одной строки от другой


4-1117561700
seamcat
2005-05-31 21:48
2005.07.31
ExitProcess


1-1121337022
Kolan
2005-07-14 14:30
2005.07.31
Работа с RS-485




   Наверх