Maison > développement back-end > C++ > Comment puis-je capturer une capture d'écran d'une application spécifique en C# ?

Comment puis-je capturer une capture d'écran d'une application spécifique en C# ?

Patricia Arquette
Libérer: 2025-01-17 12:11:10
original
515 Les gens l'ont consulté

How Can I Capture a Screenshot of a Specific Application in C#?

Prendre des captures d'écran d'applications individuelles en C#

Bien que capturer une capture d'écran en plein écran avec Graphics.CopyFromScreen() soit simple, capturer une application spécifique nécessite une technique plus sophistiquée. La solution optimale exploite la fonction API PrintWindow Win32. Cette fonction permet de capturer l'image d'une fenêtre, quelle que soit sa visibilité ou si elle est cachée derrière d'autres fenêtres.

Voici un aperçu du processus :

  1. Identifiez la fenêtre cible : Utilisez GetWindowRect pour obtenir le handle (HWND) de la fenêtre d'application que vous souhaitez capturer.
  2. Utilisez PrintWindow : Appelez la fonction PrintWindow, en fournissant le handle de fenêtre et un handle vers un contexte de périphérique Windows (HDC). Cette fonction capturera le bitmap de la fenêtre.
  3. Récupérer le Bitmap : Créez un objet Bitmap et récupérez son contexte Graphics en utilisant Graphics.FromImage(). Utilisez GetHdc() pour récupérer le HDC du bitmap et transmettez-le à PrintWindow.
  4. Nettoyage : Libérez le HDC et éliminez l'objet Graphics pour éviter les fuites de ressources.

Cette méthode garantit que vous pouvez capturer une capture d'écran précise d'une application cible, même si elle est partiellement ou complètement masquée.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal