Daten aus Zwischenablage übergeben



  • Ich muss gelegentlich Screenshots erzeugen und möchte die dann
    aber möglichst aus meiner Zwischenablage auf einen anderen Rechner
    im Netzwerk ebenfalls in die Zwischenablage übergeben.

    Wie kann ich den Speicher so aufbereiten, dass ich ihn
    per remote übertragen kann?

    Den Screenshot erzeuge ich wahlweise manuell oder aber so
    aus meiner Anwendung raus, als BMP:

    CWnd* pWnd=GetDesktopWindow();
    
    	CBitmap 	bitmap;
    	CClientDC	dc(pWnd);
    	CDC 		memDC;
    	CRect		rect;
    
    	memDC.CreateCompatibleDC(&dc);
    
       pWnd->GetWindowRect(rect);
    
    	bitmap.CreateCompatibleBitmap(&dc, rect.Width(),rect.Height() );
    
    	CBitmap* pOldBitmap = memDC.SelectObject(&bitmap);
    	memDC.BitBlt(0, 0, rect.Width(),rect.Height(), &dc, 0, 0, SRCCOPY);
    
    	pWnd->OpenClipboard() ;
    	EmptyClipboard() ;
    	SetClipboardData (CF_BITMAP, bitmap.GetSafeHandle() ) ;
    	CloseClipboard () ;
    
    	memDC.SelectObject(pOldBitmap);
    	bitmap.Detach();
    


  • Ich denke, du wirst das wohl in Einzelschritte zerlegen müssen:
    - Screenshot erstellen
    - Daten an eine auf dem anderen Rechner laufende Software übertragen
    - dort Daten wieder in die Zwischenablege einfügen


Anmelden zum Antworten