Probleme de sauvegard d'image

Deeddolith Messages postés 20 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 4 octobre 2008 - 24 sept. 2008 à 19:34
Deeddolith Messages postés 20 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 4 octobre 2008 - 24 sept. 2008 à 23:31
Bonjour,

J'ai un petit soucis avec un controle picturebox.

Dans mon application, j'extrais des images au format BMP a partir d'une base de donnée Access.
Dans un tableau d'octets (OLEheader), j'ai enregistré les entetes OLE renvoyé par la BDD.


Maintenant, je voudrais enregistrer l'image affichée par mon picturebox dans la base, en y ajoutant les entetes OLE (ainsi, l'image est visible dans les formulaires de Access).


J'ai ecrit le code suivant:

'pic_mob est le picturebox utilisé
Dim pictureData As Byte()               'Tableau destné a recevoir les données de l'image
Dim fieldData as Byte()                     'Tableau destiné a recevoir les entetes OLE + image
Dim stream As IO.MemoryStream

stream =
New IO.MemoryStream
pic_mob.Image.Save(stream, Imaging.ImageFormat.Bmp)                                          'sauvegarde de l'image dans un flux

ReDim pictureData(0
To stream.Length)                                                                        'préparation du tableau image
stream.Read(pictureData, 0, stream.Length)                                                                   'copie de l'image dans le tableau

ReDim fieldData(0
To stream.Length + OLEheader.Length)                                        'préparation du tableau entetes OLE + image
Array.Copy(OLEheader, fieldData, OLEheader.Length)                                               'copie des entetes OLE
Array.Copy(pictureData, 0, fieldData, OLEheader.Length, pictureData.Length)      'copie des données image

Hors, lors de l'ecriture des données de l'image dans le flux, les entetes BMP ne sont pas présentent comme je m'y attendais (peut etre a tort), et du coup les données ecrites dans la base sont corrompues, fesant planter mon application.

Avez vous une solution a proposer ?

Merci d'avance.

1 réponse

Deeddolith Messages postés 20 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 4 octobre 2008
24 sept. 2008 à 23:31
Bon, j'ai une soltion qui ne m'enchanter guère: Sauvegarder l'image dans un fichier et la recharger dans un tableau d'octets (C'est lent !)
0
Rejoignez-nous