Salut à toutes et à tous,

A mon tour de me frotter à l'erreur générique de GDI+.

La situation :
Un code qui fonctionne bien sur plusieurs machines en XP et Vista (32Bits).
Dans ce code, la sauvegarde d'un screenshot à un endroit forcément autorisé puisqu'il sauve dans le Temp de l'utilisateur (Si l'utilisateur ne peut pas écrire sur son propre Temp, où va-t-on ... Lol).

Le problème :
Un utilisateur s'achète un nouveau portable (Vista 64Bits)
Lorsque le programme est installé sur son poste, l'erreur générique GDI+ apparaît au moment du
Code : Sélectionner tout - Visualiser dans une fenêtre à part
bmp.Save(System.IO.Path.Combine(Path.GetTempPath(),"screenshot.jpeg"), ImageFormat.Jpeg);
En C# cela donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
bmp = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32.bppArgb);
image = Graphics.FromImage(bmp);
screenShot.CopyFromScreen(Screen.PrimaryScreen.Bounds.X,Screen.PrimaryScreen.Bounds.Y,0,0,Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy);
bmp.Save(System.IO.Path.Combine(Path.GetTempPath(),"screenshot.jpeg"), ImageFormat.Jpeg);
J'ai un peu de mal à comprendre pourquoi l'utilisateur obtient cette erreur sur ce nouveau portable.

Est-ce dû à la version 64Bits de Vista ? Si oui, comment résoudre ce pbl ?
Est-ce dû à une dll manquante, ou de mauvaise version pour le GDI+ (Peut-être à cause de l'utilisatio sur un 64 bits alors que toute la solution a été générée et publiée sur du 32Bits ? Encore là, si c'est ça, comment faire ?). Dans ce cas, quelle DLL faut-il mettre où sur le poste pour que cela fonctionne ?
Est-ce dû à autre chose ?

Merci de vos z'avis z'avisés,
JM