5480X1680 = 92,198,400也就是象素点只占一个字节就要92MB,你认为pBits能够承受吗?
在win9x下pBits只能小于16MB

解决方案 »

  1.   

    首先,我创建的是单色位图,pBits只需(54880*1680/8)MB,pBits所指的内存有30MB,
    其次,我在同一个系统同一个应用程序内能用CreateBitmap(67200,1680,1,1,pBits)成功.
    我已试验多次,程序一加载就CreateBitmap(...);整个程序就此功能,
    第一次54880*1680,失败第二此67200*1680成功,第三次54880*1680失败...再请教adrianx先生,何处有此说明,win9x下pBits只能小于16MB?
      

  2.   

    CreateBitmap这个函数的前两个参数为int,即整型数。你的54880用整数表示为负数,而超出整数的范围,但舍入后表示正数,因而可以。