GDI のデバイス コンテキストから GDI+ ハンドルを取得する次の C++ 行があります。
//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;
}
私のテストでは問題なく動作します。
しかし最近、アプリのクラッシュ ダンプを受け取りました。「アクセスできないスレッド参照メモリの場所」という例外が、コードの上記の行 (Graphics オブジェクトが初期化されるはずの場所) にあります。
ここで何が問題になる可能性がありますか? そして、それに対処する方法は?