Screenshot et preview

Résolu
rsx602 Messages postés 140 Date d'inscription jeudi 24 août 2006 Statut Membre Dernière intervention 28 août 2014 - 29 juin 2011 à 20:05
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 30 juin 2011 à 09:13
Bonjours , je fait présentement un project qui consiste a prende une capture d'écran , la sauvegarder dans un fichier spécifique et ensuite de la prévisualiser dans un picturebox. Tout fonctionne bien pour la premiere capture cependant quand je reclique sur mon boutton je me retrouve avec cette erreur : A generic error occurred in GDI+. Voici le code de mon project a présent.

PictureBox1.Image = Nothing

Dim screenImage As New Bitmap(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)
Dim g As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(screenImage)
g.CopyFromScreen(New Point(0, 0), New Point(0, 0), New Size(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height))
screenImage.Save("C:\ULab Test Win", System.Drawing.Imaging.ImageFormat.Jpeg)

PictureBox1.Image = Image.FromFile("C:\ULab Test Win")


l'erreur arrive a la ligne : screenimage.save("C:\......") quelqu'un aurais une idée svp? Merci beaucoup a l'avance et pardonnez moi pour mes fautes de francais

11 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 juin 2011 à 22:27
Bonjour,
Il semble que l'exécution de la première ligne dénoncée :
screenImage.Save("C:\ULab Test Win", System.Drawing.Imaging.ImageFormat.Jpeg)

est gêné&e par l'exécution de la 2ème qui ouvre un fichier peut-être non encore totalement créé.
Cela expliquerait qu'en otant la 2ème instruction ===>> plus de plantage.
Essaye de placer entre les deux un DoEvents (ou son équivalent VB.Net), pour voir.


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
3
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
29 juin 2011 à 22:30
Bonjour,

Ou sinon, pourquoi ouvrir le fichier ensuite ?
Essayes d'utiliser l'image qui est déjà en mémoire.

Mon site
3
rsx602 Messages postés 140 Date d'inscription jeudi 24 août 2006 Statut Membre Dernière intervention 28 août 2014
29 juin 2011 à 20:13
Ah oui j'ai oublier de spécifier.. quand j'enleve la ligne de code : Picturebox1.image = image.fromfile..... (Le code qui load l'image dans le picturebox pour donner un appercu de la capture d'écran) le code ne plante pas
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
29 juin 2011 à 21:30
Bonjour,

Sans trop m'avancer, essayes en mettant un nom sans espace et avec une extension.

Sinon, je ne vois pas de raison spécifique.

Mon site
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rsx602 Messages postés 140 Date d'inscription jeudi 24 août 2006 Statut Membre Dernière intervention 28 août 2014
29 juin 2011 à 22:03
screenImage.Save("C:\ULabTestWin.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)

Toujours la meme erreur =(
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
29 juin 2011 à 22:14
Bonjour,

Tu as essayé en Dispose-ant les différents éléments (sauf le Bitmap) avant d'enregistrer ?

Tu as essayé de décorreller l'enregistrement et la lecture avec un timer ou un bouton par exemple ?

Si ça fonctionne, peut être qu'un DoEvents ou un Sleep devrait aider.

Mon site
0
rsx602 Messages postés 140 Date d'inscription jeudi 24 août 2006 Statut Membre Dernière intervention 28 août 2014
29 juin 2011 à 22:23
Oui j'ai essailer de mettre le save de la screenshot sur un bouton simple. La Lecture sur un autre. Et le "Picturebox1.image = nothing" sur un autre boutton. Toujours la meme erreur. Cependant comme j'ai dit plus haut si je ne fait aucun "preview" de la capture d'écran je peut prende autant de capture que je veut sans avoir aucune erreur... Je comprend pas trop le problème , peut-etre aurais tu une meilleur suggestion pour faire une capture d'écran qui serais plus stable? Merci de ton aide NHenry.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 juin 2011 à 22:29
Doublé par NHenry


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 juin 2011 à 22:50
A tout hasard

Ce lien montre un code ressemblant au tien mais avec quelques petites nuances, jusqu'à la sauvegarde sur fichier.
Je ne connais toutefois rien à VB.Net, que je n'ai par ailleurs pas pour tester.


____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
rsx602 Messages postés 140 Date d'inscription jeudi 24 août 2006 Statut Membre Dernière intervention 28 août 2014
29 juin 2011 à 23:15
NHenry.... MErci beaucoup... en effect j'ai utilisé limage qui est en mémoire et tout marche , Merci a vous deux pour l'aide
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
30 juin 2011 à 09:13
Bonjour,

Ce forum est là pour ça :)

Si ton problèmes est résolu, pense à mettre "Réponse acceptée" sur le ou les messages qui t'ont aidés.

Mon site
0
Rejoignez-nous