2009-04-17 4 views
0

J'essaye d'écrire une application simple qui fera une capture d'écran d'une application, puis rendra cette capture dans l'application principale (c'est-à-dire, l'application qui a pris la capture d'écran).Application capture d'écran et de rendu

J'ai trouvé comment obtenir la poignée de la fenêtre et obtenir la capture d'écran de l'application, mais j'ai du mal à rendre l'écran capturé dans l'application 'principale'.

utilisant GDI, je le code suivant pour rendre:

Bitmap bit(hSrcbmp,hpal); 
graphics.DrawImage(&bit,Gdiplus::PointF(0,0)); 

où hSrcbmp est une image bitmap de l'écran capturé et graphiques est un GDI + de l'objet "Graphics.

je reçois l'erreur suivante après l'appel du constructeur à Bitmap: Gdiplus :: Image = {nativeImage = 0x00000000 lastResult = Win32Error LOADSTATUS = -858993460}

* Utilisation de Visual Studio 2005

* Windows XP

* Visual C++ (non géré)

Toutes les idées?

Une autre question: Une meilleure approche? C# ou DirectX ou openGL? Merci

Répondre

0

La capture d'écran est une FAQ Win32 pour 18 ans.
Voir sur win32 group pour le code standard (MS et autres), C et C++

+0

oui, capture d'écran, mais qu'en est-il de re-rendre cette même capture dans une fenêtre différente – cbrulak