Bonjour,
Je voudrais savoir, si c'est possible, comment faire pour obtenir un Bitmap à partir d'un graphics.
Merci :)
Version imprimable
Bonjour,
Je voudrais savoir, si c'est possible, comment faire pour obtenir un Bitmap à partir d'un graphics.
Merci :)
salut
Tu peux faire
Graphics g = Graphics.FromImage(Image);
ainsi, tu dessineras dans ton image et tu auras ce que tu veux :)
The Monz, Toulouse
Oui, merci,
Mais ce n'est pas ce que je voulais dire, ma question n'était pas assez explicite,...
En fait ce que je voudrais c'est réussir à faire une prise d'écran de la fenêtre d'un processus.
Pour ce faire, je pensais faire :
Je ne suis même pas sûr que ça marche, mais, si je peux à partir de ce graphics avoir une image, ça me paraîtrait possible,...Code:
1
2 Graphics.FromHwnd(proc.MainWindowHandle); // ou proc est mon processus
salut
genre un truc un peu comme cela ?
Reste plus qu'à remplacer les valeurs du VirtualScreen par des valeursCode:
1
2
3
4
5
6
7
8
9 public Bitmap CaptureScreen() { Bitmap b = new Bitmap( SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height); Graphics g = Graphics.FromImage(b); g.CopyFromScreen(0, 0, 0, 0, b.Size); g.Dispose(); return b; }
que tu auras récupérer de la fenetre à saisir :)
Ca irait ça ?
The Monz, Toulouse
Oui, j'ai vu ce code, seulement, s'il me semble, je n'aurai en ce cas que l'image qui s'affiche sur l'écran, c'est à dire que si il y a devant une autre fenêtre, je ne verrais rien,...
Merci pour ton aide theMonz31
salut
il y a d'autres discussions qui parlent de la capture écran.
Je pense qu'en dehors de passer la fenetre à saisir devant, ca risque
d'être difficile de faire une capture d'une fenêtre no visible :)
Maintenant, hypothèse : peut-etre est-il possible de "modifier" le DC pour passer TON DC à toi et donc, que l'application "capturer" dessiner dans un DC qu'elle n'aura pas allouer, mais j'y crois pas trop cela dit !
The Monz, Toulouse
excuse-moi, mais je n'ai pas compris ce que tu as dit à propos du DC, de plus, j'ai relu ton code, et ce que tu dis à propos de,Citation:
remplacer les valeurs du VirtualScreen par des valeurs
que tu auras récupérer de la fenetre à saisir
et je ne vois pas comment faire pour obtenir les valeurs de la fenêtre à partir du processus,...
Merci
J'ai plus en tete les noms, mais il me semble qu'il y a des fonctions de l'Api Win32 qui te permettent à partir du Handle d'une fenetre, d'obtenir sa taille, etc...
The Monz, Toulouse
bon courage (la journée est finie pour moi :) )
Ok, merci, je vais chercher ça,...
D'ailleurs, j'ai peut-être déja trouver ! :D
Merci !!!
Bon, je pense que ça devrait être bon, si je réussis à le faire fonctionner,...
Voila le lien: Lien
Par contre, arrêter moi si je me trompe, ce ne sera pas multi-plateforme, sauf si j'inclus la DLL dans le projet, non ?
Bonne journée :D