Sauvegarder unepicture box

Messages postés
78
Date d'inscription
samedi 12 avril 2003
Dernière intervention
19 juillet 2017
-
Bonjour à tous.
Impossible de sauvegarder le contenu demain picture box.
je récupéré l'"erreur suivante
"Une erreur générique s'est produite dans GDI+."
qu'en pensez vous?
Voici mon code :
   Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
        If Me.PictureBox1.Image IsNot Nothing Then
            Me.PictureBox1.Image.Save("D:\aa.jpg")
        End If
    End Sub


Je vous joins également une copie d'écran cela fait plusieurs jours que je tourne en rond après de multiples recherches sur le Web.
Merci de votre aide.
_
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
78
Date d'inscription
samedi 12 avril 2003
Dernière intervention
19 juillet 2017
1
Merci
Bonjour Whismeril
merci de ta réponse.

Voici comment je charge mon image :
Dim chem = "E:\PHOTO200207\DATA\Le 2002 07 10  Maayane 1 An\DSC04550.JPG"


Dim fs As System.IO.FileStream
        ' Specify a valid picture file path on your computer.
        fs = New System.IO.FileStream(chem, IO.FileMode.Open, IO.FileAccess.Read)
        '  PictureBox1.SizeMode = PictureBoxSizeMode.Zoom
        Me.PictureBox2.Image = System.Drawing.Image.FromStream(fs)
        Dim bmp As Bitmap = Image.FromStream(fs)

'Dim Wide, High As Integer ' Size of merged image

fs.Close()
        fs.Dispose()
        fs = Nothing
        If Me.PictureBox2.Image IsNot Nothing Then
            Me.PictureBox2.Image.Save("D:\aa.jpg")
        End If


J'ai bien mon image dans ma picturbox mais impossible après avoir traité cette image de pouvoir l'enregistrer.
As-tu une solution me permettant de faire cette simple sauvegarde avec
Me.PictureBox2.Image.Save

Merci de ta réponse.

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI

Merci d'y penser dans tes prochains messages.

--

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 95 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DAN1
Messages postés
12415
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 décembre 2018
0
Merci
Bonsoir

tu as chargé quoi comme image?

Quand je fais

pictureBox1.Load(Directory.GetFiles("C:\Users\Public\Pictures\Sample Pictures")(0))

If pictureBox1.Image IsNot Nothing Then
	pictureBox1.Image.Save("C:\Test\essai.png")
End If



J'ai bien des chrysanthèmes dans C:\Test, que ce soit en jpg ou en png.
Commenter la réponse de Whismeril
Messages postés
12415
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 décembre 2018
0
Merci
Bonsoir

Henry a modifier ton premier message, pour rendre ton code plus lisible grâce à la coloration syntaxique.
Il t'a même laissé, un petit mot encadré avec un lien pointant vers un bout de tuto pour l'utiliser correctement.

Merci d'en tenir compte à l'avenir.



Pour ta question à proprement parlé, as tu essayé de chargé directement ton image sans passer par le filestream, comme dans mon exemple?

Je n'en suis pas sûr, mais peut être que le fait que le stream ne soit pas fermé pose problème.
Commenter la réponse de Whismeril
Messages postés
5622
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
0
Merci
Bonjour,

C'est le contraire, c'est le fait que le stream soit fermé:

Dim chem = "E:\PHOTO200207\DATA\Le 2002 07 10  Maayane 1 An\DSC04550.JPG"

Dim fs As System.IO.FileStream
        ' Specify a valid picture file path on your computer.
        fs = New System.IO.FileStream(chem, IO.FileMode.Open, IO.FileAccess.Read)
        '  PictureBox1.SizeMode = PictureBoxSizeMode.Zoom
        Me.PictureBox2.Image = System.Drawing.Image.FromStream(fs)
        Dim bmp As Bitmap = CType(Image.FromStream(fs), Bitmap)

'Dim Wide, High As Integer ' Size of merged image

        If Me.PictureBox2.Image IsNot Nothing Then
            Me.PictureBox2.Image.Save("D:\aa.jpg")
        End If

fs.Close()
        fs.Dispose()
        fs = Nothing

@+ Le Pivert
Whismeril
Messages postés
12415
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 décembre 2018
-
Ha oui, il était fermé, j'ai mal lu en mode texte.

C'est étonnant quand même, puisque l'image est crée. Le fait de fermer le flux ne devrait pas avoir de conséquences....
cs_Le Pivert
Messages postés
5622
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
> Whismeril
Messages postés
12415
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 décembre 2018
-
Salut Whismeril,

Pour ma part, je charge l'image comme ceci:

 Me.PictureBox2.Image= Image.FromFile("chemin")


En mettant Option Strict On, on corrige aussi cette ligne:

Dim bmp As Bitmap = CType(Image.FromStream(fs), Bitmap)


Et pour l'enregistrement:

    Me.PictureBox2.Image.Save("D:\aa.jpg", ImageFormat.Jpeg) 'enregistrement des images



voilà
cs_DAN1
Messages postés
78
Date d'inscription
samedi 12 avril 2003
Dernière intervention
19 juillet 2017
> cs_Le Pivert
Messages postés
5622
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 décembre 2018
-
Merci beaucoup a vous 2 ,seul je n'aurai pas trouvé v
Dan1
Whismeril
Messages postés
12415
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 décembre 2018
> cs_DAN1
Messages postés
78
Date d'inscription
samedi 12 avril 2003
Dernière intervention
19 juillet 2017
-
Pense à marquer le sujet résolu.
Commenter la réponse de cs_Le Pivert

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.