Существует ли более эффективный способ получения копии рабочего стола Windows (с использованием GDI или любой другой библиотеки), чем приведенный ниже код
HDC dcDesktop;
HDC dcMem;
HBITMAP hbmpMem;
HBITMAP hOriginal;
BITMAP bmpDesktopCopy;
dcDesktop = GetDC( GetDesktopWindow() );
dcMem = CreateCompatibleDC( dcDesktop );
hbmpMem = CreateCompatibleBitmap( dcMem, m_lWidth, m_lHeight );
BitBlt( dcMem, 0, 0, m_lWidth, m_lHeight, dcDesktop, 0, 0, SRCCOPY );
// Copy the hbmpMem to the desktop copy
GetObject(hbmpMem, sizeof(BITMAP), (LPSTR)&bmpDesktopCopy);