C++ 使用Gdiplus Graphics::DrawImage在大型图像上崩溃

C++ 使用Gdiplus Graphics::DrawImage在大型图像上崩溃,c++,winapi,gdi+,C++,Winapi,Gdi+,如何使用Gdiplus渲染具有32位像素深度的24000 x 48000图像?在我的机器上,我有32GB的RAM。或者,如何使用GDIplus缩放位图而不将其绘制到另一个位图中?我在写一个模拟,其中一些就这么大。救命啊 您是否使用64位生成目标?32位构建的每个进程地址空间只有2GB,如果设置了/LargeAddressWare标志,则每个进程地址空间只有3GB。这是GDI+see-(Hans Passant的回答)@Straightsun MSFT不是一个真正有用的评论。从这个问题可以很清楚地

如何使用Gdiplus渲染具有32位像素深度的24000 x 48000图像?在我的机器上,我有32GB的RAM。或者,如何使用GDIplus缩放位图而不将其绘制到另一个位图中?我在写一个模拟,其中一些就这么大。救命啊

您是否使用64位生成目标?32位构建的每个进程地址空间只有2GB,如果设置了/LargeAddressWare标志,则每个进程地址空间只有3GB。这是GDI+see-(Hans Passant的回答)@Straightsun MSFT不是一个真正有用的评论。从这个问题可以很清楚地看出,它们确实有足够的内存来保存图像。戴夫的评论有真实的答案。谢谢大家。我特别感谢戴夫的回答。我用的是C++/WinAPI,而不是C#/.NET。如果WIC在那里可用,那么这就是我的下一个任务answer@user9778277嗯,很抱歉给你一个链接。net提供的方法解决了您的问题吗?您使用的是64位构建目标吗?32位构建的每个进程地址空间只有2GB,如果设置了/LargeAddressWare标志,则每个进程地址空间只有3GB。这是GDI+see-(Hans Passant的回答)@Straightsun MSFT不是一个真正有用的评论。从这个问题可以很清楚地看出,它们确实有足够的内存来保存图像。戴夫的评论有真实的答案。谢谢大家。我特别感谢戴夫的回答。我用的是C++/WinAPI,而不是C#/.NET。如果WIC在那里可用,那么这就是我的下一个任务answer@user9778277嗯,很抱歉给你一个链接。net提供的方法解决了您的问题吗?