Ошибка при работе с Tblobstream

Тема в разделе "Delphi - Базы данных", создана пользователем XXXXX, 1 сен 2005.

Статус темы:
Закрыта.
  1. XXXXX

    XXXXX Гость

    Подскажите пожалуйста в чём проблема( строка Stream := TBlobStream.Create(ibquery1.FieldByName('messagebody')as Tblobfield, bmRead); выдаёт ошибку Invalit class typecast). Пример вроде правильнный(из Helpa)
    )

    procedure TForm1.FormCreate(Sender: TObject);
    var
    Buffer: PChar;
    MemSize: Integer;
    Stream: TBlobStream;

    begin
    ibquery1.open;
    Stream := TBlobStream.Create(ibquery1.FieldByName('messagebody')as Tblobfield, bmRead);
    try
    MemSize := Stream1.Size;
    Inc(MemSize); {Make room for the buffer's null terminator.}
    Buffer := AllocMem(MemSize); {Allocate the memory.}
    try
    Stream.Read(Buffer^, MemSize); {Read Notes field into buffer.}
    Memo1.SetTextBuf(Buffer); {Display the buffer's contents.}

    finally
    FreeMem(Buffer, MemSize);
    end;
    finally
    Stream.Free;
    end;

    end;

    end.
     
  2. Barmutik

    Barmutik Гость

    Вы точно уверены что это поле имеет тип TBlobField ?
     
  3. Guest

    Guest Гость

    <!--QuoteBegin-Barmutik+1:09:2005, 10:31 -->
    <span class="vbquote">(Barmutik @ 1:09:2005, 10:31 )</span><!--QuoteEBegin-->Вы точно уверены что это поле имеет тип TBlobField ?
    [snapback]24356" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Да проверил Classname
    Спасибо - с проблемой уже разобрался надо было делать так

    stream : TStream;
    ....
    stream:= ibquery1.CreateBlobStream(ibquery1.FieldByName('messagebody') as TBlobField, bmRead);
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей