Code simple, il permet de capturer l'image de l'écran du device
Le code utilise la fonction BitBlt (API tres connue) pour faire une capture de l'écran.
Source / Exemple :
// declaration de l'api P/Invoke
// Ce code doit etre mis dans une class héritant de la classe Form
[DllImport("coredll.dll")]
public static extern int BitBlt(IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, uint dwRop);
const int SRCCOPY = 0x00CC0020;
private void Snapshot(string fileName)
{
Graphics gx = this.CreateGraphics();
Rectangle rect = Screen.PrimaryScreen.Bounds;
Bitmap bmp = new Bitmap(rect.Width, rect.Height);
// Creation d'un objet graphics compatible
Graphics gxComp = Graphics.FromImage(bmp);
// Prendre la photo
BitBlt(gxComp.GetHdc(), 0, 0, rect.Width, rect.Height, gx.GetHdc(), rect.Left, rect.Top, SRCCOPY);
// Enregistrement dans un fichier
bmp.Save(fileName, System.Drawing.Imaging.ImageFormat.Bmp);
// Cleanup
bmp.Dispose();
gxComp.Dispose();
}
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.