Tom59247
Messages postés27Date d'inscriptionjeudi 7 janvier 2010StatutMembreDernière intervention 7 février 2013
-
7 févr. 2013 à 17:29
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024
-
7 févr. 2013 à 19:45
Bonjour tout le monde,
J'utilise une DLL écrite en cpp pour réaliser un hook depuis mon prog écrit en Vb.
Cela fonctionne bien, en revanche je souhaiterais passer en argument à mon hook un handle,
problème en vb les handle sont des entiers(intptr) alors que dans ma DLL c'est de l'hexa.
je procède donc de la manière suivante :
Public Declare Function SetHookGet Lib "HOOK.dll" (ByVal fentre As Integer, ByVal Cible As Integer) As Integer
dim Panel15HWND as intptr = WindowFromPoint(500, 50)
SetHookGet(Me.Handle.ToInt32, Panel15HWND.ToInt32)
int WINAPI SetHookGet(int me, int cible)
{
HWND moi = (HWND)me;
HWND Focus = (HWND)cible;
}
Mais sans succès...
lorsque je réalise la recherche de handle directement depuis ma dll cela fonctionne ..
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 7 févr. 2013 à 17:51
Bonjour,
comment (code) détermines-tu le handle à passer à la fonction ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 7 févr. 2013 à 18:26
Montre la déclaration de la fonction WindowFromPoint (celle que tu as faite) !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Tom59247
Messages postés27Date d'inscriptionjeudi 7 janvier 2010StatutMembreDernière intervention 7 février 2013 7 févr. 2013 à 18:34
Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Integer, ByVal yPoint As Integer) As IntPtr
je ne pense pas que le problème soit de cette partie de code, mes fonction de recherche de handle servent dans d'autre code je n'ai jamais eu de soucis :/
Vous n’avez pas trouvé la réponse que vous recherchez ?
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024159 7 févr. 2013 à 19:45
Bonjour,
En vb les handle sont des entiers(intptr) alors que dans ma DLL c'est de l'hexa
L'hexa n'est qu'une représentation, il serait utile de savoir si le pointeur en VB est un 32 ou 64 bits et si tes entiers en C sont des 32 ou 64 bits.
v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---
Mon site