if( m_bmp.m_hObject != NULL )//判断
        m_bmp.DeleteObject();
/////////载入图片
    HBITMAP hbmp = (HBITMAP)::LoadImage(AfxGetInstanceHandle(), 
        file, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION|LR_LOADFROMFILE);奇怪,file文件明明存在,但返回hbmp =NULL;
我用也检查了,返回TRUE
BOOL  isexis=FALSE;
 
CFileFind   find;  
if   (find.FindFile(file))  
          isexis=TRUE;
    find.Close();

解决方案 »

  1.   

    你的  file用的是绝对路径还是相对路径?LoadImage 这个函数的第二个参数需要用 绝对路径你可以把file改成绝对路径再试一下
      

  2.   

    LoadImage函数中,如果指定读取的图象是一个文件,则第一个参数可以设置为NULL并且指定LR_LOADFROMFILE
    而如果第一个参数不为空,则函数会尝试从第一个参数中的模块句柄查找资源为第二个参数的资源文件,一般LR_LOADFROMFILE会被忽略
      

  3.   

    HBITMAP hBitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),_T("Logo.bmp"),IMAGE_BITMAP,0,0,
    LR_DEFAULTSIZE | LR_LOADFROMFILE);路径为相对路径,在该程序运行路径下_T("Logo.bmp")
      

  4.   

    HBITMAP hBitmap=(HBITMAP)::LoadImage(NULL,"C:\\1.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);像这样的处理是不会有错的 一般常见的错误就是图像文件路径有问题或图像文件不正确格式.参考:
    http://blog.csdn.net/smallfishff/archive/2008/07/29/2731841.aspx
      

  5.   

    你用Windows自带的画图将那幅图打开, 然后再选(另存为...),重新保存一遍, 再用LoadImage试试,
      

  6.   

        Bitmap  m_bmp;

        if( m_bmp.m_hObject != NULL )//判断
            m_bmp.DeleteObject();
    /////////载入图片    HBITMAP hbmp = (HBITMAP)::LoadImage(NULL, 
            file, IMAGE_BITMAP, 0, 0,LR_DEFAULTSIZE| LR_LOADFROMFILE);
     
        if( hbmp == NULL ) 
            return ;
    ///////////////////////该断程序用来取得加载的BMP的信息////////////////////////
        m_bmp.Attach( hbmp );
        DIBSECTION ds;
        BITMAPINFOHEADER &bminfo = ds.dsBmih; 
        m_bmp.GetObject( sizeof(ds), &ds );
        int cx=bminfo.biWidth;  //得到图c像宽度
        int cy=bminfo.biHeight; //得到图像高度IDC_STATICBMP

    CRect rect;
        GetDlgItem(ITEMID)->GetWindowRect(&rect);
        ScreenToClient(&rect);
        GetDlgItem(ITEMID)->MoveWindow(rect.left,rect.top,cx,cy,TRUE);//调整大小

    ((CStatic *)GetDlgItem(ITEMID))->SetBitmap(hbmp);目录,代码就是这样,我试了24位的位图,都可以显示,就256的灰度图不行,
    但这个灰度图,其他软件都可以打开的,有没有其他显示的方法呢?
      

  7.   

    这个问题很奇怪,真不是路径问题吗?我曾经做项目时碰到加载图片时在IDE下调试调用总返回空,而找到RELEASE或DEBUG下的.exe文件单独执行则完全没问题,(最后加载到资源里终于解决了),楼主是不是也是这种情况?
    如果不是那是图片格式问题?换一张考到同路径下改成LOGO.bmp如果还不行肯定是格式问题
      

  8.   

    第一个参数用NULL,文件名用绝对路径,图片只要用画图程序能打开,应该就没有问题,如果怀疑格式问题,在画图里用吸管吸一个颜色,在原位置原色用铅笔点一下,存盘,应该就没问题了。
      

  9.   

    LZ的问题,我也遇到过我也是加载一BMP图,参数设置是没有问题的
    但就是返回的值0
    关注中…………
      

  10.   

    问题就是,这个图片是自己生成的,是乎不合适LoadImage的规范
    用画图板另存为即可