CxImage, récupération de bytes

Signaler
Messages postés
2
Date d'inscription
mercredi 12 novembre 2008
Statut
Membre
Dernière intervention
7 avril 2009
-
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Bonjour,

j'essaie de coder en C++ un code qui me permet de placer des données de type BYTE récupérées à l'aide de la fonction GetBits() de CxImage puis de les placer dans un tableau 1D pour en faire un TImage, c'est à dire un tableau 1 ligne contenant les valeurs de pixels. Mon code est le suivant:
          
           CxImage *toto = new CxImage();
            bool bv =toto->Decode(jpegch,size[0],CXIMAGE_FORMAT_JPG);
           
            DWORD row=0;
           
            BYTE*  tab =  toto->GetBits(row);
            TMov* dest=new TMov(toto->GetHeight(),toto->GetWidth());
            long taillepixel = toto->GetSize() ;
            toto->GrayScale();

            unsigned long int product = toto->GetHeight()*toto->GetWidth();
            //dest->Redim(toto->GetHeight(),toto->GetWidth());
            long taillepixel2 = toto->GetSize();

            for(unsigned long int i=0;i<=toto->GetHeight();i++){
                for(unsigned long int j=0;j<=toto->GetWidth();j++){   
                    dest->EcrireElement(toto->GetHeight()-i,j,tab[i*toto->GetWidth()+j]);
                }
            }

Le problème est que ce code provoque des memory access violation.

Si quelqu'un pouvait m'aider.

Merci.

1 réponse

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Déja il faut que tu regardes si les erreurs proviennent de l'écriture dans dest, ou bien de la lecture dans tab

_____________________________________
Un éditeur de ressources gratuit pour Windows