Quelques questions

MaxSoldier Messages postés 289 Date d'inscription dimanche 10 août 2003 Statut Membre Dernière intervention 28 février 2009 - 26 janv. 2005 à 15:08
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 26 janv. 2005 à 17:04
Bonjours !

J'ai 2 - 3 questions plus ou moin connes à vous poser.

1) A quoi sert le Handle ? ( je sais en gros mais j'ai pas trouvé de définition précise )
2) Comment récupérer le Handle d'un autre programme ?

3) Comment récupérer un message envoyé grace à l'API SendMessage ?
4) Qu'est ce que le DC ( de hasDC ou je sait pas quoi :p )

Voili voilou !

Merci d'avance !
-=Ar$£nik=-

5 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 janv. 2005 à 15:47
Voici les quelques définitions en simplifiée :



* Un Handle est une sorte de pointeur : il s'agit d'une valeur codée
sur un long qui permet de définir tel ou tel objet. Grâce à un handle
(donc en utilisant les fonctions de l'API Windows), tu peux manipuler
des objets tels que des fenêtres, des crayons, des brosses, etc.



* Il existe plusieurs fonctions pour récupèrer des handles, mais tout
dépend si tu cherche le handle d'une fenêtre ou un handle d'application
! Le handle de l'instance d'application est renvoyée par exemple par la
fonction de l'API WIndows ShellExecute.



* Tu ne peux (à ma connaissance) intercepter un message que si ce
message est destiné à ta fenêtre, ou si tu redéfinit la fonction de
gestion d'une fenêtre. Les fenêtres sont gérées par une fonction qui
est appelée à chaque réception d'un message Windows. Mais tu a la
possibilité de redéfinir cette fonction pour traîter les messages que
tu veux. Cela est très instable sous l'IDE de VB, mais une fois
compilé, c'est stable. Cela s'appelle le SubClassing, ou le Hooking
(voir les sources qui en parlent sur ce site, dont ma source de
limitation de redimensionnement de feuille).



* Un DC, ou Device Context, et une zone mémoire permettant de stocker
des données graphiques. Il permet entre autre de stocker des bitmap,
des crayons des pinceaux, etc. Il te faut un handle de DC pour pouvoir
y accèder. Normalement, en VB, tu ne devrais pas t'en servir, mais dès
que tu utilise les API Windows de la gdi, tu est bien obligé de t'en
servir !

DarK Sidious

Administrateur et reponsable VB/API du site www.ProgOtoP.com
0
MaxSoldier Messages postés 289 Date d'inscription dimanche 10 août 2003 Statut Membre Dernière intervention 28 février 2009 2
26 janv. 2005 à 16:00
C'est vraiment cool ! J'ai appris pas mal de chose en 2 min !
Merci beaucoup pour ta réponse et pour ton super prog API Viewer

-=Ar$£nik=-
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 janv. 2005 à 16:36
De rien, content de voir que mon viewer d'api te plaît : j'y ai passé par mal de temps ! et j'en passerais encore davantage !

DarK Sidious

Administrateur et reponsable VB/API du site www.ProgOtoP.com
0
MaxSoldier Messages postés 289 Date d'inscription dimanche 10 août 2003 Statut Membre Dernière intervention 28 février 2009 2
26 janv. 2005 à 16:46
J'aurai aussi voulu savoir ( en passant :p ) comment fait pivoter une image ... Parce qu'il ny'a à pas de notion d'angle sur le control picture Box.

A moin de faire pitoter à chaque fois ( mais au niveau du fichier ( ce qui serai pas possible puisque je suis sur un Worms Like :p )) ... je ne vois pas ! Merci encore !

-=Ar$£nik=-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 janv. 2005 à 17:04
Pivoter une image dans un contrôle, ou le contrôle lui-même ? Le contrôle lui même, je doute que ce soit possible !



L'image elle-même, c'est possible en utilisant une transformation avec des sin ou cos !

DarK Sidious

Administrateur et reponsable VB/API du site www.ProgOtoP.com
0
Rejoignez-nous