Question existencielle de fonctionnement interne

Signaler
Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
-
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
-
salut a tous.
juste une question sur le fonctionnement des choses (juste paske j'aime a pousser les choses)....
qu'est ce qu'un handle? est ce un pointeur, ou est ce un indice de tableau (l'indice du pointeur ds une table systeme des handles)......ca va peut-etre paraitre stupide comme question, mais bon....c'est juste pr connaitre un peu les choses en profondeur, moi je trouve ca interessant....c'est tt

4 réponses

Messages postés
351
Date d'inscription
mercredi 21 juillet 2004
Statut
Membre
Dernière intervention
12 août 2009

Un handle est un numéro attribué par le système à chacun des composants de ton appli, et ce à chaque fois que lance ton appli.
Ce n'est pas un pointeur.
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
HWND n'est pas un type a part comme char, int et double le sont.
C'est une macro, c'est a dire une composition de plusieurs types.
Ce qu'on appelle le HANDLE, ce n'est ni plus ni moins que l'identifiant de chacun de tes composants(bouton, dialog, checkbox,...).
C'est une valeur qui permet de les identifier et qui est attribué par le systeme au lancement du programme.
Un HANDLE est unique!

A titre de comparaison, ici sur cppfrance on a chacun un pseudo pour etre identifier. Et bien les composants d'un programme ont aussi chacun leurs HANDLE pour etre identifer.

Shell
Messages postés
122
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
27 février 2007
1
Je ne suis pas tout a fait d'accord avec les definitions proposees...
Un handle est effectivement le moyen unique d'identifier un objet quelconque, mais c'est bien un pointeur sur une zone de donnee. D'ailleurs HANDLE c'est un " typedef void * " car c'est un pointeur qui doit "brancher" sur une structure de donnees qui n'est pas definie. Pas definie pourquoi??? Car elle depend tout simplement de l'objet manipule...Ensuite par rapport a l'objet manipule, l'api qui prendra en parametre cet HANDLE re cast ce pointeur dans le format de donnee de l'objet.
Voila j'espere avoir ete assez clair dans mon explication

@+ and good dev...
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
DevGizmo> Il ne faut pas mélanger la macro HANDLE et le mot handle pour désigner par exemple l'identifiant d'un controle qui en fait correspond a la macro HWND!

Shell