CAPTURE D'ÉCRAN EN JPG

matrey Messages postés 399 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 6 septembre 2004 - 10 nov. 2003 à 21:00
AlainDab Messages postés 4 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 22 décembre 2016 - 22 déc. 2016 à 10:22
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/17837-capture-d-ecran-en-jpg

AlainDab Messages postés 4 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 22 décembre 2016
22 déc. 2016 à 10:22
Bon cette fois j'ai trouvé le problème. C'est quand on affiche les caractères à plus de 100% dans les paramètres d'affichage...
Je ne sais toujours pas comment rectifier le problème...
AlainDab Messages postés 4 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 22 décembre 2016
19 déc. 2016 à 17:55
En fait, çà n'a rien à voir avec Windows 10, mais avec la taille de l'écran.
J'ai développé en 1366x768 et le problème apparaît en 1920x1080.
Je ne capture pas la bonne zone de l'écran...
Je suppose donc qu'il faut faire un ratio entre le screen.width de développement et le screen.width de l'utilisateur... Je vais voir.
AlainDab Messages postés 4 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 22 décembre 2016
19 déc. 2016 à 13:31
Bonjour,
Parfait avec XP, mais sous Windows 10 çà capture un morceau du bureau (de la bonne taille), mais l'image n'est pas la bonne...
Tu as une solution ?
Merci d'avance.
rebixav Messages postés 130 Date d'inscription dimanche 16 décembre 2007 Statut Membre Dernière intervention 28 janvier 2013
16 août 2012 à 11:30
PS : Allez sur ce lien :

j'ai ajouter une modification :
http://www.vbfrance.com/forum/sujet-SAUVEGARDER-CONVERTIR-FICHIER-BMP-VERS-FICHIER-JPG-VB6_1605573.aspx

Merci encore JACK !
tilp Messages postés 10 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 16 novembre 2008
10 janv. 2008 à 05:45
2008 commence bien ! Code excellent... La première bonne trouvaille de l'année ... que j'ai adapté dans mon code et me permet de prendre une capture maintenant de n'importe quelle partie de l'écran ! Vraiment excellent !
dozern Messages postés 3 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 4 août 2006
4 août 2006 à 19:40
Super code : simple et propre, ça nous change des "Hello world" qui se multiplient sur le site ;-)
Fwdavy Messages postés 57 Date d'inscription lundi 27 septembre 2004 Statut Membre Dernière intervention 8 novembre 2007
18 août 2005 à 15:08
Help c'est possible d'avoir la source en vb 2005 ou vb.net, car j'ai essayé d'importer et j'ai pas mal d'erreur que j'arrive pas à résoudre. Avec de l'aide je peux actualiser cette source en vb 2005. Voici le rapport d'erreur :

Import de msvbvm60.dll c'est OK mais je ne trouve pas VarPtr.

Error RegSvr32 IJL11.DLL chargé mais le point d'entrée DLLregisterserver est introuvable.

La variable ANY par quoi je peux la changer (object?).

Warning 4 XML comment will be ignored. Conversion BMP - JPG_cls.vb 106 3 BMPversJPG
Error 5 'Public Event Load(sender As Object, e As System.EventArgs)'frmForme.vb 74 3 BMPversJPG

Error 6 'hdc' is not a member of 'BMPversJPG.frmCopieEcran'. frmForme.vb 79 10 BMPversJPG
Error 7 'Image' is not a member of 'BMPversJPG.frmCopieEcran'. frmForme.vb 82 3 BMPversJPG


Error 3 Name 'vbSrcCopy' is not declared. Conversion BMP - JPG_cls.vb 185 247 BMPversJPG
Error 13 Name 'vbFromUnicode' is not declared. Conversion BMP - JPG_bas.vb 125 72 BMPversJPG
Error 14 Name 'VarPtr' is not declared. Conversion BMP - JPG_bas.vb 129 11 BMPversJPG
Error 1 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_cls.vb 78 141 BMPversJPG
Error 2 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_cls.vb 24 89 BMPversJPG
Error 8 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_bas.vb 49 109 BMPversJPG
Error 9 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_bas.vb 49 88 BMPversJPG
Error 10 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_bas.vb 46 70 BMPversJPG
Error 11 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_bas.vb 44 69 BMPversJPG
Error 12 'As Any' is not supported in 'Declare' statements. Conversion BMP - JPG_bas.vb 42 69 BMPversJPG
zytry Messages postés 12 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 12 septembre 2006
13 avril 2005 à 16:02
Impeccable ! Merci !!
laurent207 Messages postés 101 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 11 avril 2008
23 déc. 2004 à 09:24
cool

c'est tu comment capturer aussi la souris avec la capture d'écran ?

sinon, bon programme (bien commenter, c domage que tu n'ai pas commenté les paramétres, mais ça va m'obliger à réfléchier un peu, lol), continu comme ça (euh la déclaration des variables se fait au début de chaque procédure ou fonction (là je pinaille) et pas n'importe où)

je te met 9/10 car on peut toujours s'améliorer ;-)
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 nov. 2004 à 19:56
re
Si seulement tu avais regardé les paramètres de BitBlt :
Tu aurais vu que les données correspondent aux dimensions, elle sont en pixels !
Donc, maintenant que tu as le handle, va falloir trouver la taille de la fenêtre en question : c'est une autre api nommée GetWindowRect.
Tout est dans "api-guide" : que ce soit cette dernière api que BitBlt --> Il y a des exemples en VB6 pour chaque api

Si tu as encore besoin d'infos, vient sur le chat (colonne de gauche de cette page) : il y aura tjrs qqun pour t'aider, mais la première aide pour les apis, c'est api-guide ! suffit de lire et de tester !
zytrahus Messages postés 5 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 24 novembre 2004
24 nov. 2004 à 19:42
en effet, j'ai trouvé sur MSDN, ça avance donc :

j'ai modifié ton code de cette manière :

hWnd = GetForegroundWindow()
hdc = GetDC(hWnd)
BitBlt frmCopieEcran.hdc, 0, 0, Me.Width, Me.Height, hdc, 0, 0, ScrCopy

le résultat est étrange, l'image commence bien en haut a gauche de la fenetre active (celle de ton programme), en revanche, malgré mes attributs Me.Width et Me.Height, l'image fait malgré tout la taille de la résolution de mon bureau. (elle prend tout le coin droit de mon image et elle complete avec du gris) c'est tres bizarre lol
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 nov. 2004 à 19:30
Interesse toi aux apis, c'est la seule solution
zytrahus Messages postés 5 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 24 novembre 2004
24 nov. 2004 à 19:18
En fait la fenetre active, c'est la fenetre donc je veux la capture d'ecran (meme si parait bizarre lol)


je pensais que j'aurais acces plus facilement mais en fait ça n'a pas l'air plus simple !
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 nov. 2004 à 19:13
lu zytrahus
Oui, il suffit de trouver le handle de la fenêtre active et le fournir à l'application au lieu de celui du bureau.
Utilise les api genre GetForegroundWindow
Cherche sa définition dans "api-guide" gratuit dispo sur ce site : http://www.allapi.net
zytrahus Messages postés 5 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 24 novembre 2004
24 nov. 2004 à 19:01
Salut


Ton code marche plutôt pas mal, j'ai eu du mal à en trouver un qui soit bien commenté !

Tu ne saurais pas comment faire pour faire une capture de la fenetre active ? (c'est à dire de la fenetre ou le bouton "capturer l'ecran" est présent)

J'ai déchiffré ton code, mais hélas je ne vois pas comment faire :(
cs_wolfcyber Messages postés 78 Date d'inscription dimanche 22 février 2004 Statut Membre Dernière intervention 24 juillet 2005
7 nov. 2004 à 21:38
Vraiment tres bien !!
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
1 août 2004 à 12:27
Excuses moi pour le message sur la précédente source.
Je n'avais pas lu la description jusqu'au bout
L'exemple est parfait 10/10.
Meci
Sibelle07 Messages postés 206 Date d'inscription dimanche 14 septembre 2003 Statut Membre Dernière intervention 25 mars 2005
21 déc. 2003 à 14:18
Pas mal ce prog il est utile pour les conversions de formats il y aurait surement moyen de le faire pour d'autre format :-o

Note : 8/10
carabidule Messages postés 13 Date d'inscription samedi 10 août 2002 Statut Membre Dernière intervention 7 janvier 2004
17 déc. 2003 à 13:08
J'ai fait un petit programme avec le module pour passé de BMP à JPG c'est très utile :p

J'ai transformé Copie_Ecran(ByVal Fichier As String, _
ByVal Qualité As Integer)
en Copie_Ecran tout court

Et pour Call SaveJPG(Capture, Fichier & ".jpg", Qualité) en
Call SaveJPG(Capture, Fichier & ".jpg", Slider1)
-> G mi une slider pour choisir la qualité du jpg :)

Merci pour ton module ;)
Sirocooo Messages postés 412 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 7 avril 2008 1
12 nov. 2003 à 09:07
Tu dis : "J'ai eu beaucoup de reproches ne n'avoir pas fait d'application pour le mettre en pratique"...
Tu as eu UNE SEULE remarque et ce n'était pas un reproche... lol
rnosat Messages postés 132 Date d'inscription mardi 31 octobre 2000 Statut Membre Dernière intervention 2 mai 2004
11 nov. 2003 à 13:28
Hello jack !
bien ton prgr ...
mais ...
saurais tu faire un prog pour sauvegarder une img jpg a partir de la webcam ???
A+
matrey Messages postés 399 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 6 septembre 2004
10 nov. 2003 à 21:00
cool
Rejoignez-nous