Question existencielle de fonctionnement interne

leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 - 9 sept. 2004 à 10:07
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013 - 10 sept. 2004 à 00:28
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

cs_thierry la fronde Messages postés 351 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 12 août 2009
9 sept. 2004 à 10:18
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.
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
9 sept. 2004 à 10:28
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
0
DevGizmo Messages postés 122 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 27 février 2007 1
9 sept. 2004 à 10:39
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...
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
10 sept. 2004 à 00:28
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
0
Rejoignez-nous