如果自己在加载图片是返回值为0,但是自己又找不出来错误,你就得注意StrechDIBits函数本身的限制问题了。它仅可以192k byte的内存空间,如果你的图像大小大于这个值,你可以将图像缩小,测试一下。如果是这种情况,(*^__^*) 嘻嘻.....
参考:
StretchBlt()/StretchDIBits() 失败时大大不同位图大小
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
269585
本文已归档。它按“原样”提供,并且不再更新。
症状
已知此问题会影响作为桌面墙纸的某些位图的显示,启用活动桌面 Web 内容。
原因
- 目标位图 PELS 一个源中的宽度扫描行。
- 垂直缩放因子 (目标高度 / 源高度)。
- 每 PEL (颜色深度) 的字节数。
将给定 1024 x 768 x 256 色的显示指标和 16 x 16 源位图,StretchBlt() 无法由于用来查找该最佳的缓冲区的大小,但会成功,如果源位图 18 x 18 或更大的查寻方法中的边界条件。