通过CDC获取HDC
通过CDC(设备描述表)获取HDC(设备上下文句柄)的方法:
//第一种
void ...::OnDraw(CDC *pDC)
{
...... HDC hDC=pDC->GetSafeHdc();
} //第二种 HDC hDC=this->GetDC()->GetSafeHdc(); //...
如果用VS的断点调试查看此时hDC(或 pDC->m_hDC)的值会发现无法读取内存,但这不影响什么,我们已经获取到了 hDC 了,之所以无法读取内存只因为它是一个指针,它的值是一个地址,所以无法获取。