![]() |
Re: DBImage - Bitmap ist ungültig
Zitat:
Delphi-Quellcode:
ist es richtig, dass Du jetzt ms.Position auf 78 o.ä. gesetzt hast? Wenn Du danach vom Stream speicherst, musst Du den Stream wieder "zurückspulen" (ms.Position:=78;), bevor Du das LoadFromStream machen kannst. Ein Stream ist ein Bandlaufwerk...Wie bei den guten alten VHS-Kassetten kannst Du nur einmal anschauen, dann musst Du spulen;) Wenn Du also zwei Aktionen machst, setzt dein LoadFromStream am Ende auf...und nicht an Position 78.
ms.Position:=0;
bmp:=TBitmap.Create; ms.SaveToFile('temp.bmp'); try bmp.LoadFromStream(ms); |
Re: DBImage - Bitmap ist ungültig
Ja, damit hast du recht. Aber selbst die Datei(temp.bmp), die aus dem Stream gespeichert wird enthält ja noch diese 78 Bits, die er nicht will und ist damit nicht zu öffnen. Es wird also ab Position 0 gespeichert und nicht ab position 78...
|
Re: DBImage - Bitmap ist ungültig
maron hat Recht. Der Stream wird nicht ab Position 78 gespeichert, sondern der komplette Stream wird gespeichert mit dem falschen header.
|
Re: DBImage - Bitmap ist ungültig
ich kriegs net hin :wall:
|
Re: DBImage - Bitmap ist ungültig
Hallo,
Das Problem ist aber bekannt. Nehme ich mal Google mit delphi access bitmap blob bekomme ich folgende Seite. ![]() Da kann man sich das schön erklären lassen und die Lösung wäre dann ab Seite 4. Heiko |
Re: DBImage - Bitmap ist ungültig
ich habe mir jetzt mal das Beispielprogramm heruntergeladen, aber jetzt kommt immer folgende Meldung:
[Pascal Fataler Fehler] E2202 Package 'VCL50' wird benötigt, konnte aber nicht gefunden werden. |
Re: DBImage - Bitmap ist ungültig
Hallo,
kompilier mal ohne Packages. Entscheidend ist doch aber der Code auf der Seite. Heiko |
Re: DBImage - Bitmap ist ungültig
Ich habe jetzt die Packages entfernt, aber jetzt kommt folgende Fehlermeldung: [Pascal Fehler] Unit1.pas(68): E2010 Inkompatible Typen: 'TBlobField' und 'TADOTable'.
Delphi-Quellcode:
bS := TADOBlobStream.Create(AdoTable1, bmRead);
|
Re: DBImage - Bitmap ist ungültig
Hallo,
da steht aber bS := TADOBlobStream.Create(AdoTable1Picture, bmRead); und nicht bS := TADOBlobStream.Create(AdoTable1, bmRead); Edit: Hm, er findet die MDB nicht ... Heiko |
Re: DBImage - Bitmap ist ungültig
ich habe aber doch das AdoTable in AdoTable1 umbenannt. Das heißt jetzt nicht mehr AdoTable1Picture sondern AdoTable1.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz