Maison >développement back-end >C++ >Comment capturer une capture d'écran sous Windows à l'aide de l'API Win32 ?

Comment capturer une capture d'écran sous Windows à l'aide de l'API Win32 ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-22 11:00:15599parcourir

How to Capture a Screenshot in Windows Using Win32 API?

Capturer une capture d'écran à l'aide de Win32

Question :

Comment capturer une capture d'écran de l'écran actuel dans Windows application utilisant Win32 ?

Réponse :

Pour capturer une capture d'écran à l'aide de Win32, suivez ces étapes :

  1. Obtenez un contexte de périphérique pour l'écran à l'aide GetDC(nullptr).
  2. Créez un contexte de périphérique compatible pour conserver l'image capturée à l'aide CreateCompatibleDC(hScreenDC).
  3. Obtenez la résolution d'écran en utilisant GetDeviceCaps(hScreenDC, HORZRES) pour la largeur et GetDeviceCaps(hScreenDC, VERTRES) pour la hauteur.
  4. Créez un bitmap compatible avec la résolution d'écran en utilisant CreateCompatibleBitmap (hScreenDC, largeur, hauteur).
  5. Sélectionnez le bitmap dans le contexte du périphérique compatible à l'aide de SelectObject(hMemoryDC, hBitmap).
  6. Copiez le contenu de l'écran dans le bitmap à l'aide de BitBlt(hMemoryDC, 0, 0, width, height , hScreenDC, 0, 0, SRCCOPY).
  7. Copiez le bitmap dans le contexte du périphérique en utilisant SelectObject(hMemoryDC, hOldBitmap).
  8. Supprimez le contexte du périphérique compatible à l'aide de DeleteDC(hMemoryDC).
  9. Supprimez le contexte du périphérique d'écran à l'aide de DeleteDC(hScreenDC).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn