VS2010 error RC2170: bitmap file xxx.png is not in 3.00 format这个算是VS2010的一个Bug,对于不能识别的资源,添加的时候,VS会弹出一个对话框让你填类型,这个类型其实是字符串表示,而不是像内置类型,是整数。但是添加PNG图片的时候,它会自动识别为PNG,可是实际上VS内部又会把它搞成Bitmap类型,打开RC文件能看见。把BITMAP 改成PNG或者任何其他名称,就好了。因为VS不支持PNG图片,包括MS的画图,都不能处理png 的透明。 所以识别为Bitmap 会出错。
当然了,对于png资源,不能用LoadBitmap 之类函数加载,而要使用FindResource等资源函数,自己提取二进制字节,类型就是你RC文件里的名称。
error RC2170: bitmap file res\HEAD_103.png is not in 3.00 format编译的时候出现这条错误,打开rc 文件发现,
IDB_PNG_HEAD_103 BITMAP "res\\HEAD_103.png"
把BIMAP 修改为 PNG 后问题解决。
说明:将BIMAP 改为PNG只是相当于告诉编译器这个不是ICO类型的资源是用户自定义资源,如果需要添加资源则需要使用FindResource,去获取资源。