• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

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

  • Автор темы XXXXX
  • Дата начала
Статус
Закрыто для дальнейших ответов.
X

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.
 
B

Barmutik

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

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);
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!