CxImage encode出错的有关问题

CxImage encode出错的问题
std::vector<CxImage*>  m_pimgvec;
CxImage* img;

char str[100];
for(int i = 1;i<=32;i++)
{
sprintf(str,"D:\\fire_32\\%d.bmp",i);
img = new CxImage();
img->Load(str,CXIMAGE_FORMAT_BMP);

img->DecreaseBpp(8,false);
m_pimgvec.push_back(img);
}

CxImage** pimgs;
pimgs = new CxImage*[m_pimgvec.size()];

FILE* pf;
pf = fopen("save.gif","wb+");


pimgs = new CxImage*[m_pimgvec.size()];

for(int i=0;i<m_pimgvec.size();i++)
pimgs[i++] = m_pimgvec.at(i);

CxImage saveimg;
saveimg.Encode(pf, pimgs, m_pimgvec.size(), CXIMAGE_FORMAT_GIF);

fclose(pf);
m_pimgvec.clear();

CxImage encode出错的有关问题
CxImage encode出错的有关问题

Encode过不去...第一次接触cximage,那位大哥知道怎么回事,谢谢指点
4点弄到现在,实在不会,第一次在****发帖,先熟悉一下。(笑)
------解决方案--------------------
建议先确认img->Load是否返回true。

试修改以下3行代码:

  TCHAR str[100]; //改 char str[100];
  for(int i = 1;i<=32;i++)
  {
    _stprintf(str,_T("D:\\fire_32\\%d.bmp"),i);//改 sprintf(str,"D:\\fire_32\\%d.bmp",i);
    img = new CxImage();
    bool r = img->Load(reinterpret_cast<const TCHAR *>(str),CXIMAGE_FORMAT_BMP);//改 img->Load(str,CXIMAGE_FORMAT_BMP);
    img->DecreaseBpp(8,false);

在上面最后一行设断点,查看r是否为true。
------解决方案--------------------
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。

------解决方案--------------------
我把以下行
for(int i = 1;i<=32;i++)
暂时改为
for(int i = 1;i<=1;i++)
最后正常生成save.gif

我用的是VS2010。