IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[GDI+] Plantage à l'appel de GetImageEncodersSize


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 120
    Par défaut [GDI+] Plantage à l'appel de GetImageEncodersSize
    Je vous donne tout de suite mon code qui plante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #include<windows.h>
    #include<gdiplus.h>
     
    int main(int argc, WCHAR* argv[])
    {
      UINT num = 0; // number of image encoders
      UINT size = 0; // size of the image encoder array in bytes
     
      Gdiplus::GetImageEncodersSize(&num, &size);
     
      return EXIT_SUCCESS;
    }
    Voilà, et rien que ça, ça plante et je ne sais pas pourquoi (pas de message d'erreur particulier, l'OS me dit juste que mon programme "stopped working"). A noter que je développe avec Visual C++ 2008 (9.0), que la compilation fonctionne bien (pas d'erreur particulière), que je tourne sous Vista (peut-être y a-t-il un rapport).
    PS : Ayant l'habitude de coder sous linux, je ne suis pas un grand maître de Visual C++.

    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 120
    Par défaut
    Ah, et j'oublais : Pour ceux et celles qui fêtent Noël : Joyeux Noël à tous et à toutes !

  3. #3
    Membre expérimenté Avatar de Twindruff
    Inscrit en
    Janvier 2005
    Messages
    216
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 216
    Par défaut
    Il faut que tu initialises GDI+ déjà, c'est expliqué dans le getting started sur msdn.

    Tu dois avoir quelque chose comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, PSTR, INT iCmdShow)
    {
       GdiplusStartupInput gdiplusStartupInput;
       ULONG_PTR           gdiplusToken;
     
       // Initialize GDI+.
       GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
     
       . . .
     
       GdiplusShutdown(gdiplusToken);
       return msg.wParam;
    }  // WinMain

Discussions similaires

  1. Plantage à l'appel de system()
    Par ouvreboite dans le forum C
    Réponses: 7
    Dernier message: 22/09/2011, 11h00
  2. Yes::Engine, plantage sur appel openGL
    Par deadalnix dans le forum OpenGL
    Réponses: 15
    Dernier message: 20/08/2007, 16h10
  3. GDI+ OptimizedDoubleBuffer : ou appeler ?
    Par sayag dans le forum Windows Forms
    Réponses: 1
    Dernier message: 23/06/2007, 06h30
  4. Réponses: 5
    Dernier message: 26/07/2006, 10h52
  5. Réponses: 15
    Dernier message: 07/07/2005, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo