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 bmp.Save(System.IO.Path.Combine(Path.GetTempPath(),"screenshot.jpeg"), ImageFormat.Jpeg);
En C# cela donne : [code] 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); [/code]
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
|