Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : hook souris [ Système / Autre ] (breton51)

mercredi 2 juillet 2008 à 18:20:28 | hook souris

breton51

bonjour,

J'ai un petit probleme pour modifier un parram dans un hook souris, je suis sous vb 2005
mon code:

    PrivateDeclareFunction UnhookWindowsHookEx Lib"user32" (ByVal hHook AsInteger) AsInteger

    PrivateDeclareFunction SetWindowsHookEx Lib"user32"Alias"SetWindowsHookExA" (ByVal idHook AsInteger, ByVal lpfn As sourisHookDelegate, ByVal hmod AsInteger, ByVal dwThreadId AsInteger) AsInteger

 

    PrivateDeclareFunction CallNextHookEx Lib"user32" (ByVal hHook AsInteger, ByVal nCode AsInteger, ByVal wParam AsInteger, ByRef lParam As MouseHookStruct) AsInteger

    PrivateDelegateFunction sourisHookDelegate(ByVal Code AsInteger, ByVal wParam AsInteger, ByRef lParam As MouseHookStruct) AsInteger

 

    <MarshalAs(UnmanagedType.FunctionPtr)> Private callback As sourisHookDelegate

 

    PrivateMousHandle AsInteger

 

    PrivateConst WH_MOUSE_LL = 14

    PrivateConst WH_MOUSE = 7

    PrivateConst HC_ACTION AsInteger = 0

 

 

    PrivateStructure MouseHookStruct

        Privatept As Point

        Privatehwnd AsInteger

        PrivatewHitTestCode AsInteger

        PrivatedwExtraInfo AsInteger

    EndStructure

 

    PublicSub Hooksouris()

        callback = New sourisHookDelegate(AddressOf sourisCallback)

        MousHandle = SetWindowsHookEx( _

                            WH_MOUSE_LL, _

    callback,      _Marshal.GetHINSTANCE(Reflection.Assembly.GetExecutingAssembly().GetModules()(0)), _

                            0)

    EndSub

 

    PublicSub UnHooksouris()

        UnhookWindowsHookEx (MousHandle)

    EndSub
 

    PrivateFunction sourisCallback(ByVal Code AsInteger, _

  ByVal wParam AsInteger, _

  ByRef lParam As MouseHookStruct) AsInteger

       

  If (Code = HC_ACTION) Then

 

             traitemant quelconque

               lParam.pt.X = lParam.pt.X - 10


       
EndIf

 

 

        Return CallNextHookEx(MousHandle, Code, wParam, lParam)

 

    EndFunction

le hook fonctionne bien car je recup les bons parrametres
le pb est qu'aucun changemant de parametre n'est pris en compte et je ne vois pas pourquoi
merci de votre aide.


mercredi 2 juillet 2008 à 21:37:36 | Re : hook souris

Renfield

Administrateur CodeS-SourceS
regarde là:
http://www.cppfrance.com/codes/HOOK-DLL-HOOK-FACILE-VB6_41774.aspx

voir main.cpp

et:

// idem que précedemment, jusqu'ici.
// nous allons reserver un peu de mémoire dans espace mémoire du client.
// Ensuite, nous allons y copier la structure pointée par lParam, afin que le client puisse y accéder.
// Nous lisons ensuite cette mémoire, afin que les éventuelles modifications effectuées par le client
// soient prises en compte

HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, false, pItem->ProcessID);
if (hProc != INVALID_HANDLE_VALUE)
{
LPVOID pData = VirtualAllocEx(hProc, NULL, vnLength, MEM_COMMIT, PAGE_READWRITE);

WriteProcessMemory(hProc, pData, (LPVOID)lParam, vnLength, NULL);            
SendMessage(pItem->hCallBack, WM_USER + nCode, wParam, (LPARAM)pData);
ReadProcessMemory(hProc, pData, (LPVOID)lParam, vnLength, NULL);

VirtualFreeEx(hProc, pData, NULL, MEM_RELEASE);

CloseHandle(hProc);
}



Cette discussion est classé dans : code, hook, lparam, byval, sourishookdelegate


Répondre à ce message

Sujets en rapport avec ce message

HOOK & variables public [ par salazar ] Lorsque je fais du Hooking et que je lie des variables public utilisées et déclarées dans un autre module, elles sont toutes vues comme étant NULL.Je HOOK & variables public (Expert en Hook demandé) [ par salazar ] Lorsque ma fonction de Hooking lie des variables public utilisées et déclarées dans un autre module, elles sont toutes vues comme étant NULL.J'ai déve hook clavier [ par breton51 ] bonjourje voudrais bloquer la touche windows du clavierpour ce faire je fait un hook sur le clavier en vb6 je n'est pas de pb je faitSetWindowsHookEx( Pb avec les Hook ! [ par NoMitsu ] Bon soir a tous,j'ai besoin d'aide (je maudit les hook j'arrive pas a les faire marcher:( Enfin j'aimerais faire un hook sur une fenetre externe a mon Lire dans un fichier Txt -optimiser mon code- [ par ninja hacker ] Bonjour!J'ai fais un tutoriel sur internet qui ma permit d'apprendre a lire dans un fichier Txt pou savoir la derniere ligne de texte écrit dans celui Erreur de Procédure Paramétrée [ par Lyche ] Bonjour à tous.Je voudrais savoir ce qui cloche dans cet appel de procédure et cette procédure. J'envoie les bonnes données, mais la fonction ne me re Hook focus sur formulaire en arriere plan [ par MANURELAIS ] Salut à tous, Je me permet a nouveau un post. Bon le besoin est le suivant: Une apli commerciale d'encaissement magasin, un lecteur de code barre (j Séparé le code d'une userform? [ par PatBlarg ] Bonjour! Petite questions. J'ai une userform avec beaucoup de code dedans qui sert seulement à l'aspect visuel du programme. Est-il possible de séparé picturebox et souris [ par drenalyn51 ] Bonjours à tous et à toutes!Je travail avec VB.net 2008Voilà mon souci :J'ai un picturebox que je veux déplacer avec la souris dont voici le code :Pri


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,41 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.