Добрый день! Нужно сделать снимок рабочего стола. Делаю средствами Win GDI. Все работает отлично, но "полупрозрачные" окошки не попадают в результирующее изображение ( Причем если сделать просто "Prnt Scr" и затем "Ctrl+V" в Paint - все видно. Подскажите, п-та, почему полупрозрачные объекты не попадают на мой скриншот? Ниже код, которым я снимаю скриншот и получаю данные bitmap'а в памяти: Код (Text): HDC hdcScreen = CreateDC("DISPLAY", NULL, NULL, NULL); // get a Display DC HBITMAP OffscrBmp = CreateCompatibleBitmap(hdcScreen, ScreenW, ScreenH); // make a bmp in memory to store the capture in HDC OffscrDC = CreateCompatibleDC(hdcScreen) ; HBITMAP OldBmp = (HBITMAP)SelectObject(OffscrDC, OffscrBmp); BitBlt(OffscrDC, 0, 0, ScreenW, ScreenH, hdcScreen, 0, 0, SRCCOPY); // create BITMAPINFO with params needed BITMAPINFO bmpinfo; memset(&bmpinfo.bmiHeader, 0, sizeof(BITMAPINFOHEADER)); bmpinfo.bmiHeader.biSize = sizeof(BITMAPINFOHEADER); bmpinfo.bmiHeader.biWidth = ScreenW; bmpinfo.bmiHeader.biHeight = -ScreenH; bmpinfo.bmiHeader.biBitCount = 32; bmpinfo.bmiHeader.biPlanes = 1; bmpinfo.bmiHeader.biCompression = BI_RGB; if((!GetDIBits(OffscrDC,OffscrBmp, 0, ScreenH, NULL, &bmpinfo, DIB_RGB_COLORS)) || // call carefully (bmpinfo.bmiHeader.biHeight != (-ScreenH)) || (bmpinfo.bmiHeader.biWidth != ScreenW) || (bmpinfo.bmiHeader.biBitCount != 32) || (bmpinfo.bmiHeader.biPlanes != 1) || (bmpinfo.bmiHeader.biCompression != BI_RGB)){ return false; //something was wrong } // copy data GetDIBits(OffscrDC,OffscrBmp, 0, ScreenH, (void *)RGBScreen , &bmpinfo, DIB_RGB_COLORS); // call carefully // clear all DeleteObject(OldBmp); DeleteDC(OffscrDC); DeleteObject(OffscrBmp); DeleteDC(hdcScreen);