begin process at 2012 02 09 01:30:19
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > CAPTURE D'ÉCRAN EN .NET 2.0 (SANS API)

CAPTURE D'ÉCRAN EN .NET 2.0 (SANS API)


 Information sur la source

Note :
9,75 / 10 - par 8 personnes
9,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Source .NET ( DotNet ) Classé sous :capture, ecran, screenshot Niveau :Initié Date de création :01/02/2006 Vu / téléchargé :19 620 / 2 075

Auteur : sebmafate

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (17)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Ce matin en lisant mes Feeds RSS, je suis tombé sur cette source : http://www.codeproject.com/csharp/ScreenCapture.as p

Après l'avoir lu et nettoyer de ce qui ne sert à rien... je vous la livre ;)

Cette source permet de faire des captures d'écran en .net sans utiliser les API win32... (enfin pas directement)



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉATION DE CLASSES MÉTIERS À PARTIR D'UNE BASE DE DONNÉES
Source avec Zip Source .NET (Dotnet) SILVERLIGHT : METTEZ UNE TOUCHE D'AOP DANS VOS CONTRÔLES
Source avec Zip Source avec une capture Source .NET (Dotnet) BATCHIMAGECONVERTER
Source avec Zip Source .NET (Dotnet) MAFBINDERHELPER : UNE CLASSE POUR BINDER AUTOMATIQUEMENT VOS...
Source avec Zip Source .NET (Dotnet) WINDOWS FORMS VALIDATORS

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) WINDOWSGADGET LIKE par Frelon
Source avec Zip Source avec une capture Source .NET (Dotnet) USERCONTROL PLANNING / SEMAINE / JOURNÉE par yohan49
Source avec Zip Source avec une capture Source .NET (Dotnet) TEMPLATE MATCHING ET RECONNAISSANCE D'OBJETS AVEC OPENCV (EM... par boutemine
Source .NET (Dotnet) CALCULE D'UNE EXPRESSION MATHEMATIQUE PAR COMPILATION par yohan49
Source avec Zip Source avec une capture Source .NET (Dotnet) CALENDRIER TACTILE, SOUS FORME DE ROUES par Robert33

 Sources en rapport avec celle ci

Source .NET (Dotnet) CHANGER LA RESOLUTION DE VOTRE ECRAN, UTILISATION DES API WI... par mechtaly
Source avec Zip Source avec une capture Source .NET (Dotnet) SCREEN EN SÉRIE par leproc
Source avec Zip Source .NET (Dotnet) CAPTURE D'ÉCRAN À LA ONENOTE2003 par sebmafate
Source avec Zip Source .NET (Dotnet) AUTRES MÉTHODES POUR FAIRE DES CAPTURES D'ÉCRAN par sergebre
Source avec Zip Source .NET (Dotnet) CAPTURE D'ECRAN "EN .NET" par gg00xiv

Commentaires et avis

Commentaire de Lutinore le 01/02/2006 12:12:37 administrateur CS

Ah vi bien les nouvelles fonctions en .NET 2.0. La méthode CopyFromScreen est l'implémentation managée de BitBlt en fait..

Commentaire de sebmafate le 01/02/2006 13:09:10 administrateur CS

oui... je l'ai précisé sur mon Blog...
il manque plus que l'implémentation de PrintWindow :(

Commentaire de Lutinore le 17/02/2006 19:05:20 administrateur CS

Ah si finalement :

Control.DrawToBitmap == WM_PRINT == PrintWindow

Commentaire de imuammer le 25/02/2006 20:27:11

very good

Commentaire de fdouieb le 24/03/2006 12:14:27

Bonjour,

Très bien le Frameries 2

Petite question: Il existe toujours le problème des vidéos.
Je m'explique, j'ouvre dans le coin de mon écran une petite vidéo. Je fait la capture et a l'emplacement de la vidéo un rectangle noir.

Est-ce qu'une personne a un code qui permet de remplacer ce rectangle noir par une image de la video.

Je vous explique mon but.

Je développe un control parental qui envoie les faits et geste de nos bambins a une adresse mail. Entre autre, une capture d'écran tous les x seconds. Vous comprendrai que le rectangle noir n'est pas exactement ce que je souhaite voir.

Commentaire de Lutinore le 25/03/2006 03:25:37 administrateur CS

C'est à cause du mode de rendering utilisé par DirectShow.

Petit test amusant, créer une forme la plus simple possible, et dans la constructeur tu mets :

this.BackColor = Color.FromArgb( 16, 0, 16 ); // Overlay DirectShow ( noir )

Tu lances WMP ( Windows Media Player ) avec une vidéo assez large ( ou taille x 2 ) pour le test, tu passes ta forme au premier plan devant WMP, et maintenant tu peux déplacer ta forme c'est elle qui reçoit la vidéo dans sa zone cliente au lieu d'avoir un fond noir, le test est encore plus évident si une autre fenêtre masque totalement WMP et vient s'intercaler entre WMP et ta forme C#, c'est la magie des overlays : )

Si dans WMP tu fais Menu -> Outils -> Options -> Performance -> Options avancées -> dans accélération vidéo tu décoches "Utiliser les superpositions" ( superposition c'est la traduction française d'overlay ; ) tu n'auras plus cet effet là.

Conclusion, le logiciel que tu veux capturer utilise les overlays.

J'aurais pu faire une capture d'écran pour te montrer ce que ça donne mais ça aurait été tout noir :D

Commentaire de Willi le 07/03/2007 15:03:21 administrateur CS

Et voici son petit frère fais sous IronPython
http://www.pythonfrance.com/code.aspx?ID=41773

Commentaire de bzhhydde le 21/03/2007 16:51:28

Je viens d utiliser ton code et jel e trouve parfait, exactement ce que je voulais!!!

Je m explique je suis actuellement sur une application qui créer une carte de membre a partir du nom, prenom et photo, ainsi avec une capture d ecran j arrive a un resultat tel qu il est a l ecran, ce que veut le client!

il peut donc faire ses modification avec le picture box et hop en 1 click il a le resultat!

merci j ai galéré avant de trouver qque chose de simple!

Commentaire de vincedav31 le 05/07/2007 15:13:26

J'ai un très gros soucis, voilà je débute en programmation, et je ne sais pas comment faire apparaître la fenêtre qui ressemble au screen placé au début du tuto.
Quand je telecharge le fichier .zip il ne contient que des fichiers inconnu par windows !
HELP ME !

Commentaire de Lutinore le 05/07/2007 21:06:08 administrateur CS

Vince, c'est seulement le code qui est disponible dans le ZIP, pour obtenir un fichier executable tu dois compiler le code avec un compilateur ou avec Visual Studio par exemple:

http://www.microsoft.com/france/msdn/vstudio/express/vcsharp/telechargez.mspx

Commentaire de papat2006 le 16/10/2008 10:44:46 10/10

Génial, exactement ce que je cherchais !

Commentaire de blade196 le 30/04/2010 14:11:03 9/10

merci pour le bout de code, sa me parait plus simple a utiliser que les api. j'ai juste une petite question: est ce que je peu faire une impression de la zone client d'une autre application?
pour le moment j'essaye de m'inspirer du bout de code qui récupère la zone client du formulaire mais je ne vois pas comment lui dire que par exemple, la fenêtre StarUML est une Form. je ne connais que FindWindow pour recuperer l'appli que je veux pour le moment (j'ai commencé le vb il y a 2 jour...)

Commentaire de sebmafate le 30/04/2010 14:49:40 administrateur CS

Oui, il est possible de faire une capture d'une autre fenêtre...
Si mes souvenir sont bon, si tu connais le hWnd de la fenêtre, tu peux faire :

Form f = Form.FromHandle( unhWnd ) as From;

Commentaire de blade196 le 03/05/2010 10:26:37

merci de ton aide. je pensai pouvoir me débrouiller avec sa mais j'ai un problème pour recuperer ma fenêtre que je ne comprend pas.

f = Form.FromHandle(CaptureScreen.GetWindow(CaptureScreen.FindWindow(vbNullString, "StarUML"), 0))
le méthode getWindow n'est peut être pas la plus adapté mais je n'en ai pas trouvé d'autre.
f reste null et je ne sais pas pourquoi. ma fenêtre StarUML est réduit dans ma barre des taches et je peu faire un closeWindow dessus si je la restaure.
je n'arrive pas non plus a faire de showWindow dessus pour la restaurer

si tu a une idée je suis preneur sinon si tu peu juste m'indiquer une voie vers ou chercher sa devrait me suffire

Commentaire de blade196 le 21/05/2010 17:03:38

bon aller on va tenter une dernière fois de demander conseil. pour me simplifier la vie j'ai decidé de lancer moi meme l'appli histoire d'etre sur d'avoir le bon handle mais le probleme persiste

        Dim proc As Process = New Process
        proc.StartInfo.FileName = fileName
        proc.StartInfo.CreateNoWindow = False
        proc.StartInfo.WindowStyle = ProcessWindowStyle.Maximized
        proc.Start()
        proc.WaitForInputIdle()

        Dim f1 As Form = New Form(proc.MainWindowHandle) 'ou proc.handle mais aucun ne marche, f1 vaut nothing


        Dim r1 As Rectangle = f1.RectangleToScreen(f1.ClientRectangle)
        Dim bmp As Bitmap = New Bitmap(r1.Width, r1.Height, PixelFormat.Format32bppArgb)
        Using g As Graphics = Graphics.FromImage(bmp)
            g.CopyFromScreen(r1.Left, r1.Top, 0, 0, r1.Size, CopyPixelOperation.SourceCopy)
        End Using

        bmp.Save(pictureName)
        proc.CloseMainWindow()
        proc.Close()

Commentaire de sebmafate le 21/05/2010 17:22:59 administrateur CS

tu sais ici ce n'est pas un forum, on n'est pas là pour résoudre les problèmes sur tes sources... mais pour parler de ma source :)

pourquoi ne pas poster un message sur le forum ?

Commentaire de blade196 le 21/05/2010 21:42:23

oui dsl, je sais que ce n'est normalement pas le meilleur endroit pour poser ma question mais c'est plus en désespoir de cause que je reviens te demander conseil.
j'ai déjà posté un message sur le forum mais qui n'a pas eu grand succès. et ta source étant ce qui se rapproche le plus de ce que je recherche, je me suis dis que tu verrai surement rapidement ce qui cloche dans ma pseudo solution

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Capture d'Ecran [ par fdouieb ] Bonjour,a l'adresse suivante :http://www.csharpfr.com/forum.v2.aspx?ID=260557il y a la possibilité de faire des captures d'ecran.cela fonctionne bien Capture d'ecran [ par Wardog56 ] Bonjour à tousJ'aimerai savoir coment faire une commande pour capturer une image sur l'écran de l'ordinateur.Si vous aviez la source.Merci d capture d ecran non resolu [ par danyclassique ] Bonjour a tous .Apres avoir beneficie de la participation sympatique de certains d entre nous ,le probleme de mon projet est toujours present.Je voudr capture d'ecran automatiquement [ par houdaprog ] Salut,je cherche un code qui parcourt toute une solution c# .net et fait des captures d'écrans automatiquement pour toutes les classes graphiques(les Capture d'Ecran [ par fdouieb ] Bonjour.J'utilise Visual Studio .Net 2003Je voudrais s'avoir s'il y a une possibilité de faire des captures d'écran automatique (que je sauvegarderai [Classes] Attributs [ par stailer ] Bonjour tout le monde, dans une classe on peut définir des attributs très simplement comme ceci : [Description("Fond d'écran")] private Image fo ecran tactile [ par dadidadidadi ] salut je veus développerez une application de gestion qui fonctionne sur un écran tactile,et je ne sait pas comment?qlq m'aider? DirectX.capture capture et traitement des image en temps réel [ par gearmat ] salut a tous, Je suis entrain de coder une appli pour faire la lecture de code barre via webcam j'utilise la librairie directX.capture pour captu [Capture] Capturer plusieurs image en boucle dans un programme [ par toof89 ] Bonjour la communauté, Je tiens avant toutes choses d'ores et déjà remercier toute la communauté csharpfr pour tout ce qu'elle a déjà fait pour moi s [Dev C#] Afficher flux vidéo & capture [ par toof89 ] Bonjour la communauté, [^^!2] Autant prévenir tout de suite, je suis débutant en C# [^^happy8] Exit mes précédents messages, je passe à un autre genr


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,148 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales