begin process at 2012 05 29 09:08:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

System

 > 

Hook


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Hook

mercredi 13 février 2008 à 23:20:05 | Hook

victorcoasne

Membre Club
Bonjour,

Je voudrais hooker une boîte de dialogue.

Le but est de récupérer le titre des fenêtres qui s'ouvrent avant qu'elles soient affichées et de bloquer suivant le titre.
Attention ce sont des boites de dialogues.

Je code sous Dev-C++ (donc pas de MFC SVP).

Merci et bonne prog,
@++

Le créateur du site http://victorlogiciels.com
jeudi 14 février 2008 à 00:00:24 | Re : Hook

victorcoasne

Membre Club
Réponse acceptée !
Bonjour,

Voilà un code qui fonctionne mais pas sur toute les fenêtres.
Il marche par exemple avec Notepad++ mais pas si on prend par exemple Firefox...
J'ai relevé les fenêtres à l'endroit où j'indique en commentaire l'enregistrement des noms et classe de fenêtre (c'est ce qui me permet d'affirmer que ça marche avec presque pas de fenetres)

#include <windows.h>

HINSTANCE thismod;
HHOOK hhk;


extern "C" __declspec(dllexport) BOOL WINAPI DllMain(HINSTANCE hDll, DWORD dwReason,
LPVOID Reserved)
{
    if(dwReason == DLL_PROCESS_ATTACH)
    {
        thismod = hDll;
    }
    return 1;
}


LRESULT CALLBACK kbdWinAmp(int nCode, WPARAM wParam, LPARAM lParam)
{
    if(nCode == HCBT_ACTIVATE)
    {
        HWND hWnd = (HWND) wParam;
        char Temp[4096];
        char Temp2[4096];
        GetWindowText(hWnd, Temp, 4096);
        GetClassName(hWnd, Temp2, 4096);
        // Enregistrement du nom de fenetre et classe
    }

    return CallNextHookEx(hhk, nCode, wParam, lParam);
}

__declspec(dllexport) int __stdcall Intercepte()
{
    if(!hhk)
        hhk  = SetWindowsHookEx(WH_CBT, kbdWinAmp, thismod, 0);
    return (int) hhk;
}

__declspec(dllexport) void __stdcall Relache()
{
    if(hhk)
    {
        UnhookWindowsHookEx(hhk); hhk = 0;
    }
}



Merci et bonne prog,
@++

Le créateur du site http://victorlogiciels.com
jeudi 14 février 2008 à 10:38:26 | Re : Hook

victorcoasne

Membre Club
Réponse acceptée !
Bonjour,

Apparament ça veut bien marcher maintenant.

Merci quand même et bonne prog,
@++

Le créateur du site http://victorlogiciels.com
jeudi 14 février 2008 à 10:45:03 | Re : Hook

BruNews

Administrateur CodeS-SourceS
Essaie avec HCBT_SETFOCUS

ciao...
BruNews, MVP VC++
jeudi 14 février 2008 à 10:45:40 | Re : Hook

BruNews

Administrateur CodeS-SourceS
ok, alors tant mieux.

ciao...
BruNews, MVP VC++
jeudi 14 février 2008 à 13:37:20 | Re : Hook

victorcoasne

Membre Club
Bonjour,

En fait ya quelques programmes où ça marche pas parceque la DLL ne s'est pas chargée.
Mais est-ce qu'on peut récupérer la création des fenêtres et de ses contrôles ?

Merci et bonne prog,
@++

Le créateur du site http://victorlogiciels.com
jeudi 14 février 2008 à 14:10:10 | Re : Hook

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
Si par exemple la fenêtre est créée depuis un service alors pas d'interception, le hook n'entre pas dans un service.

ciao...
BruNews, MVP VC++
jeudi 14 février 2008 à 14:17:47 | Re : Hook

victorcoasne

Membre Club
Bonjour,

Ok merci, n'y a t-il pas moyen de détecter quand même ?

Merci et bonne prog,
@++

Le créateur du site http://victorlogiciels.com
jeudi 14 février 2008 à 14:23:43 | Re : Hook

BruNews

Administrateur CodeS-SourceS
Certainement en hookant CreateWindowEx mais je n'ai pas du tout le temps d'essayer.

ciao...
BruNews, MVP VC++
jeudi 14 février 2008 à 14:26:58 | Re : Hook

victorcoasne

Membre Club
Bonjour,

Si t'as juste un lien pour que je puisse hooker cette fonction et essayer ça serait sympa.

Merci et bonne prog,
@++

Le créateur du site http://victorlogiciels.com

1 2

Cette discussion est classée dans : titre, hook


Répondre à ce message

Sujets en rapport avec ce message

Cacher la barre de titre [ par Xentor ] Comment faire pour cacher la barre de titre ?J'essaie de faire une démo en OpenGL, j'arrive à maximiser, mettre ma fenêtre devant les autres, etc... M police? [ par colargol ] salut,je developpe avec Turbo c++ (version 4.5). j'aimerai savoir si je peux modifier la taille d'une chaine de caractere. j'ai developpé une applicat C++B6 : Deplacer une form sans la barre du titre [ par fabiin ] Salutj'utilise C++builder 6,j'ai une form sans barre de titreet je voudrai la déplacer en cliquant n'import ou ailleur,g pensé utiliser le même code k barre de titre + barre des tâches [ par curator68 ] Help Me!!!!:)J'ai besoin de savoir comment enlever la Titlebar sur une form SDI. Et comment la maximizer et cacher la barre des tâches. Je crois que c Pb Dialog et icone barre des titre [ par Viper31 ] salut je voulais connaitre le moyen le plus simple pour mettre un icone dans la barre des titres d'une boite de dialog ! J'ai deja regardé dans le man Titre d'une colonne CListBox [ par garslouche ] Bonjour,je voudrais changer le titre d'une colonne d'une CListBox.Pour cela je fais un GetColumn, je modifie la colonne, et je fais un SetColumn. En t Boutons et barre de titre [ par garslouche ] Bonjour, je voudrais savoir si c'est possible d'ajouter des boutons dans la barre de titre (à côté de Réduire, Agrandir, et Fermer)Et si c'est possibl hook sur la touche entrée [ par Anacr0x ] voila mon problème, jme suis aidé avec la source de BruNews pour faire ce code mais ca ne marche pas !// le HOOK LOCAL est ICILRESULT CALLBACK GetMsgP hook global [ par Xentor609 ] Salut,Je sais bien que ca enerve certain les questions sur les hooks, mais al trouve vraiment pas.Je souhaiterais placer un hook sur le clavier, pour Titre des CPropertyPage [ par garslouche ] Bonjour,j'ai une fenêtre à onglets (CPropertySheet) dont l'un des onglets concerne la langue du logiciel.Je voudrais que si on change la langue en qu'


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,858 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales