Einen Screenshot von meinem Desktop machen ?



  • Hallo,

    Wie kann man einen Screenshot von einem Desktop machen und diese Screen dann auf ein Programm ausgeben. Momentan mache ich das so, doch es funktioniert leider nicht. Hätte jemand ein paar Ratschläge etc. ??

    CRect rect;
    	CWnd* pWnd = GetDesktopWindow();
    	CDC dc;
    	CDC* pDC = GetDC();
    
    	pWnd->GetClientRect(rect);
    	CDC *pDesktopDC = pWnd->GetDC();
    
    	bitmap.CreateCompatibleBitmap(pDesktopDC, rect.Width(), rect.Height()); // Hier sollte er ein Bitmap von dem Desktop erstellen
    
    	dc.CreateCompatibleDC(pDesktopDC);
    	dc.SelectObject(bitmap);
    
    	pDC->BitBlt(0, 0, rect.Width(), rect.Height(), pDesktopDC, 0, 0, SRCCOPY);
    
    	ReleaseDC(pDC);
    

    Ich kann eigentlich kein Fehler erkennen, der einzige Fehler ist das er kein Screenshot macht ... Funktioniert CreateCompatibleBitmap() etwa nicht ???

    Danke
    LockDown



  • geh mal ins API forum: ich weiss mit API calls gehts super einfach. du erhälts dann ganauso ein "compatible bitmap". an der funktion selbst liegts net.


Anmelden zum Antworten