نقل قول نوشته شده توسط sam3610 مشاهده تاپیک
دوست عزیز من کد رو به این نحو نوشتم :
procedure TForm1.Button3Click(Sender: TObject);var
gtPDFDocument1: TgtPDFDocument;
MemoryStream1: TMemoryStream;
begin
MemoryStream1 := TMemoryStream.Create;
MemoryStream1.LoadFromFile(ADOQuery1.FieldValues['p']);
gtPDFDocument1 := TgtPDFDocument.Create(Nil);
try
gtPDFDocument1.LoadFromStream(MemoryStream1);
finally


ShowMessage('ok');
if gtPDFDocument1.IsLoaded then
begin
gtPDFViewer1.Active := True;
end;
MemoryStream1.Free;
end;
end;

این ارور رو میده :
Untitled.png
سلام

تابع LoadFromFile یک فایل موجود بر روی دیسک رو لود میکنه. شما نیاز دارید که از Memory لود کنید


به این شکل باید بنویسید


var
BlobStream: TStream;
begin
if (not ADOQuery1.FieldByName('p').IsNull) then
begin
BlobStream := TStream.Create;
BlobStream := ADOQuery1.CreateBlobStream(ADOQuery1.FieldByName(' p'), bmRead);
try
gtPDFDocument1 := TgtPDFDocument.Create(Nil);
gtPDFDocument1.LoadFromStream(BlobStream);
finally
ShowMessage('ok');
if gtPDFDocument1.IsLoaded then
begin
gtPDFViewer1.Active := True;
end;
BlobStream.Free;
end;
end;
end;