如果函数成功,则返回值是新创建的DIB的句柄,*ppvBits指向位图位值.
如果函数失败,则返回值为NULL,并且*ppvBits为NULL.
然而,在此之后,它表明:
此函数可以返回以下值[...] ERROR_INVALID_PARAMETER
那么,最后一句话是什么意思?我很难想象它真的会返回那个值(可能它实际上是调用SetLastError).这是完全记录的吗?
这只是当前版本文档中的错误!
该CreateDIBSection总是返回HBITMAP.如果函数失败,那么它将返回0(NULL),你可以调用GetLastError.GetLastError会回来的ERROR_INVALID_PARAMETER.
这是所有GDI函数工作的标准方法,更不用说函数返回NULL 和错误代码都不可能.我还能够为这个函数挖掘旧版本的MSDN文档(大约在2008年),它确认当前版本的在线文档确实是错误的: