Hbsnapshoterv3.0 : gestionnaire de captures d'écran


Description

Salut à tous.
Dans la continuité de la source précedente, voici un second projet faisant partie de mon dossier de PTI.
Celui ci était un de ceux que je souhaitais voir tomber, mais cela n'a pas été le cas. Il est censé valider les compétences "evenementielle" et "objet". (Meme si la classe principale ne contient que des methodes static/shared).
Celui est donc un gestionnaire de capture d'écran, censé être lancé en application de fond.
Celui ci permet, par un raccourci clavier défini par l'utilisateur, de capturer l'écran entier, la fenetre active, ou une region definie par l'utilisateur(par la souris ou par des valeurs entrées manuelement).
Cette appli est evidemment basé sur ma classe de capture déja présente sur le site.
Plusieurs petits détails sont gerés, ce qui en fait un petit outil assez complet.
L'IHM laisse à désirer, les informations sont un peu jettées à l'utilisateur, c'est sans doute la premiere chose qu'il faudrait amméliorer.

Source / Exemple :


'zip zip zip

Conclusion :


Bug connus :
_Impossible de l'utiliser si une fenetre Excel a le focus, en effet mes raccourci claviers semblent être intercepté par excel.
Je pense donc passer par un hook clavier plutot que par l'api getasynckeystate, mais j'avais peur de ne pas maitriser le sujet devant les examinateurs. (oui je sais, c'est la solution de facilité...)
C'est donc une ammélioration à prévoir.
_La méthode de "force focus" pour la fenetre de selection de region est parfois defaillante... je ne sais pas trop quoi faire contre :/

Amméliorations à prévoir :
_Ajouter un algo de compression JPG plus puissant que celui du framework, qui fait totalement "baver" mes JPEG. J'utilise donc
le format PNG qui donne un excellent rapport qualité/poid, mais qui n'est pas supporté partout. (Par exemple sur vbfrance, JPG only pour les captures)

Codes Sources

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.