olixelle
Messages postés506Date d'inscriptionvendredi 30 juillet 2004StatutMembreDernière intervention 3 mars 2008
-
24 sept. 2006 à 18:08
cs_spandex
Messages postés5Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention 5 février 2007
-
3 déc. 2006 à 22:49
Bonjour,
j'ai le probleme suivante:
- J'ai une classe dans laquelle je souhaite récupérer le handle de mon formulaire principal. Je lance donc un FindWindow avec le nom de la fenetre:
Dim h As Long = Me.FindWindow(String.Empty, "Domotix")
---> me retourne 222083760919674880
Cependant, quand, dans mon formulaire, je tape
msgbox(me.handle)
---> me retourne 460968
Ce que je ne comprends pas, c'est pourkoi ces 2 handle n'ont pas la même valeur
A t on des handle "vb.net" et d'autre handle "windows" pour la meme fenetre ???
Non intptr et long, ce n'est pas la même chose.
La déclaration de l'api en dotnet est :
PrivateDeclareFunction FindWindow Lib"user32"Alias"FindWindowA" (ByVal lpClassName AsString, ByVal lpWindowName AsString) AsIntegerEn vb6, long 32bits, en dotnet long 64bits et integer = 32bits
Julien237
Messages postés883Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention 3 mars 20097 24 sept. 2006 à 18:44
Un handle c'est pas sensé rentrer dans un Integer (le Long du VB6) ? Donc 222 083 760 919 674 880 est beaucoup trop grand, (même pour un long c'est beaucoup non ?). Quand tu mets "me retourne 222083760919674880", c'est h tu veux dire ? ou Me.FindWindow(String.Empty, "Domotix") ? Parce que me c'est pas sensé renvoyer un nombre...
cs_spandex
Messages postés5Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention 5 février 2007 3 déc. 2006 à 22:49
Bonjour,
j'essaye aussi d'utilisé l'api FindWindow, mais malgrés tout ce que j'ai pu en lire ici et la, je n'arrive toujours pas a récupéré l'handle de la fenetre que je cherche ( l'api me retourne 0 ).
je la declare pourtant comme olixelle:
Declare
Function FindWindow
Lib
"user32"
Alias
"FindWindowA" (
ByVal nom_classe
As
String,
ByVal nom_fenetre
As
String)
As IntPtr
Alors si vous aviez des conseils a me donner je suis prenneur
Ps: j'ai aussi essayer en remplacement le IntPtr par un Integer et un Int32 ( ainsi que par un long en desepoire de cause ) suite a la remarque de casy