gpt4 book ai didi

c++ - GDI+ 初始化使应用程序崩溃,为什么?

转载 作者:可可西里 更新时间:2023-11-01 10:27:01 26 4
gpt4 key购买 nike

我有以下 C++ 行从 GDI 的设备上下文中获取 GDI+ 句柄:

//HDC hDC = device context from GDI
if(hDC)
{
//Obtain graphics handle for GDI++
Graphics* pgrpx = new Graphics(hDC); //I get invalid memory exception here

//Code continues
//...

//Free object
delete pgrpx;
pgrpx = NULL;
}

它在我的测试中运行良好。

但最近我收到了该应用程序的故障转储,在我在上面代码中指出的那一行出现了“它无法访问的线程引用的内存位置”异常——就在图形对象应该被初始化的地方.

这可能是什么问题?以及如何解决?

最佳答案

您是否检查了 GDI+ 的初始化?我不确定问题是否出在这里,但您可以试一试。

Gdiplus::GdiplusStartupInput    gdiplusStartupInput;
ULONG_PTR gdiplusToken;
if(GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL) != Gdiplus::Ok)
{
MessageBox(NULL, TEXT("GDI+ failed to start up!"),
TEXT("Error!"), MB_ICONERROR);
return -1;
}

关于c++ - GDI+ 初始化使应用程序崩溃,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13151956/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com