通过CDC获取 HDC

时间:2025-04-04 20:34:31

通过CDC获取HDC

通过CDC(设备描述表)获取HDC(设备上下文句柄)的方法:

//第一种
void ...::OnDraw(CDC *pDC)
{
...... HDC hDC=pDC->GetSafeHdc();
} //第二种 HDC hDC=this->GetDC()->GetSafeHdc(); //...

如果用VS的断点调试查看此时hDC(或 pDC->m_hDC)的值会发现无法读取内存,但这不影响什么,我们已经获取到了 hDC 了,之所以无法读取内存只因为它是一个指针,它的值是一个地址,所以无法获取。