Autor Beitrag
G-S
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 38



BeitragVerfasst: Do 11.09.08 16:30 
Hallo,

ich habe eine Access-Datenbank mit eingebundenen Bildern (Felddatentyp = OLE-Objekt).
Mein Problem ist, das(s) dieses Bild weder in der Access-Datenbank, noch in der Einbindung in Delphi angezeigt wird, stattdessen steht an der stelle in der Access-Datenbank nur "Bitmap" oder nach der Konvertierung "Bild" (ich kann es aber mit doppelklick in Paint öffnen) und in Delphi steht nur "(BLOB)".

Wie kann ich dies ändern?

Und noch eine kleine Frage am Rande, die nicht würdig ist in einem extra Thema geschrieben zu werden: kann man mit dieser Datenbank im kompilierten Programm arbeiten, auch wenn man KEIN Access installiert hat?
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Do 11.09.08 16:42 
1. Frage:
Die Bilder in der Access-DB sind nur für Access als solche sichtbar, sonst sind es eben nur BLOB-Daten (irgendwelche Daten halt). Du kannst diese Bilder dennoch sichtbar machen, aber dafür musst Du die ersten 78 Bytes wegschnippeln und den Rest in ein TBitmap reinladen. Im DBGrid geht es jedenfalls nicht (bzw. nur wenn man sich tierisch einen abbricht).

2.Frage:
Ja, wenn die Jet-Engine installiert ist (isse aber fast immer).

_________________
Na denn, dann. Bis dann, denn.
G-S Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 38



BeitragVerfasst: Do 11.09.08 16:51 
Und wie ginge es?
G-S Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 38



BeitragVerfasst: Di 16.09.08 20:03 
*push*
G-S Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 38



BeitragVerfasst: So 16.11.08 12:50 
*Seufz*
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: So 16.11.08 13:41 
Wie ginge was? 78 Bytes abschneiden?
Na, den Feldinhalt in einen Stream speichern (TBlobField.SaveToStream), dann im Stream 78 Bytes nach vorne hüpfen (Seek-Methode), und ab da alles in eine TBitmap reinladen (LoadFromStream).

*Seufz*

_________________
Na denn, dann. Bis dann, denn.