C++ LoadImage函数是';t使用ImageMagick创建的位图图像

C++ LoadImage函数是';t使用ImageMagick创建的位图图像,c++,bitmap,loadimage,C++,Bitmap,Loadimage,我正在尝试用我的应用程序加载一些位图图像,以便使用以下命令使用ImageMagick创建比较: C:\Program Files\ImageMagick-7.0.6-Q16>Convert << SOURCE BMP >> -crop -650 << DEST BMP >> 我使用了GetLastError,但它返回了ERROR\u SUCCESS 在我的研究中,我找到了答案,所以,这可能是一个编码问题或类似的问题 不幸的是,我不能使用任何

我正在尝试用我的应用程序加载一些位图图像,以便使用以下命令使用ImageMagick创建比较:

C:\Program Files\ImageMagick-7.0.6-Q16>Convert << SOURCE BMP >> -crop -650 << DEST BMP >>
我使用了
GetLastError
,但它返回了
ERROR\u SUCCESS

在我的研究中,我找到了答案,所以,这可能是一个编码问题或类似的问题

不幸的是,我不能使用任何工具,如MS Paint或Photoshop,但我只能使用ImageMagick,因为这种比较是在没有用户交互的情况下使用命令行完成的

是否可以设置与ImageMagick一起使用的任何特殊编码标志,以便通过它创建的位图图像可以与
LoadImage
兼容

我正在Windows 7 64位计算机上运行此应用程序,安装的ImageMagick也是它的最新64位版本。编译器是MS Visual C++ 2017年

这些是导致问题的原因:

<Mask>
<Red/>
<Green/>
<Blue/>
<Alpha/>
</Mask>
<ColorSpaceType/>
<CIEXYZEndPoints>
<Red>
<X/>
<Y/>
<Z/>
</Red>
<Green>
<X/>
<Y/>
<Z/>
</Green>
<Blue>
<X/>
<Y/>
<Z/>
</Blue>
</CIEXYZEndPoints>
<Intent/>

这些行位于ImageMagick创建的图像的XML元数据中。我检查了源图像,它没有这些线条


请在没有用户交互的情况下帮助我解决此问题。

我通过将ImageMagick命令更改为使用特定版本的位图格式来修复此问题,如下所示:

C:\Program Files\ImageMagick-7.0.6-Q16>Convert << SOURCE BMP >> -define bmp:format=bmp3 -crop -650 << DEST BMP >>
C:\Program Files\ImageMagick-7.0.6-Q16>Convert>-定义bmp:format=bmp3-裁剪-650>

现在
LoadImage
API函数可以很好地处理ImageMagick创建的位图图像。

请帮助我,这是一个紧急问题,在解决此意外问题之前,我无法继续。
C:\Program Files\ImageMagick-7.0.6-Q16>Convert << SOURCE BMP >> -define bmp:format=bmp3 -crop -650 << DEST BMP >>