begin process at 2012 05 30 06:34:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Récupérer le handle d'une fenêtre par survol


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

Récupérer le handle d'une fenêtre par survol

mercredi 5 août 2009 à 14:25:21 | Récupérer le handle d'une fenêtre par survol

sunvi

Bonjour,
je veux récupérer le handle d'un fenêtre par survol,
voilà le code que j'ai écrit,enfin, j'ai modifié un code de quelqu'un d'autre pour que ça réponde à mes besoins.
ça compile mais ça affiche n'importe quoi, quelqu'un voit où est l'erreur?

Code C/C++ :
#include <stdio.h>

#include <stdlib.h>
#include <string.h>
#include<afxwin.h>

HWND RecupHandle(void){
HWND hWindow=0;
const int MASK=32768;
POINT pCursor;
pCursor.x=0;
pCursor.y=0;
int iResult=1;
fflush(stdin);
printf("\nCliquez sur la fenêtre pour obtenir son handle\nPressez la touche 'Entree'\n");
getc(stdin);
while(iResult){
if(GetKeyState(VK_LBUTTON)&MASK){
GetCursorPos((LPPOINT)&pCursor);
iResult=0;
}
hWindow=WindowFromPoint(pCursor);
}
return(hWindow);
}

int main(void){
HWND handle;
handle = RecupHandle();
printf("%d\n", (int)&handle);
return 0;
}

mercredi 5 août 2009 à 15:15:41 | Re : Récupérer le handle d'une fenêtre par survol

sunvi

j'ai aussi éssayer le code suivant:

Code C/C++ :
#include <stdio.h>

#include <stdlib.h>
#include <string.h>
#include<afxwin.h>

HWND RecupHandle(void){
HWND hWindow=0;
fflush(stdin);
printf("\nPlacez la fenetre au premier plan (pressez la touche 'Entree' et un compte à rebours de 5 secondes commencera...)");
getc(stdin);
Sleep(5000);
hWindow = GetForegroundWindow();
return(hWindow);
}

int main(void){
HWND handle;
handle = RecupHandle();
printf("%d\n",&handle);
return 0;
}


mais quoi que ce soit la fenêtre que je mets au premier plan, il m'affiche toujours 1245024, ce qui ne correspond au handle d'aucune fenêtre avec spy++...
help!

mercredi 5 août 2009 à 18:06:56 | Re : Récupérer le handle d'une fenêtre par survol

juju12

Réponse acceptée !

C'est pas le code de récup le problèm, c'est printf...

printf("%d\n",(long)hWnd);
et non
printf("%d\n",&hWnd);

le cast n'est peut-être pas nécessaire, mais en tout cas toi tu affichais l'adresse de hWnd et non pas sa valeur (confusion avec scanf)...

jeudi 6 août 2009 à 09:45:24 | Re : Récupérer le handle d'une fenêtre par survol

sunvi

qu'est ce que je peux être nulle
c'est bien ça
seulement j'ai remarqué que le handle que j'affiche est un "entier", qui correspond à ce que j'obtiens avec spy++ en hexa...
il faut manipuler l'entier ou l'hexa??!

jeudi 6 août 2009 à 13:35:19 | Re : Récupérer le handle d'une fenêtre par survol

juju12

Un handle c'est un nombre, peu importe qu'il soit affiché en base 10, 16 ou autre...
Si tu veux l'afficher en hexa avec printf :
printf("%X\n",hWnd);


(si c'était ça ta question?!)



Cette discussion est classée dans : code, handle, include, fenêtre, pcursor


Répondre à ce message

Sujets en rapport avec ce message

C++ Standard ? [ par mmuller57 ] Voila, je viens d'aller sur le site de Bjarne Stroustrup et j'y ai pris un exemple de code source en C++ standard :#include#includeusing namespace std Petit probleme de code en C sur Linux !! [ par UncleShu ] Je voudrais créer un fichier dans le réperoire personnel d'un utilisateur mais mon code ne marche pas !!#include #include #include #define DIR $HOM Difference [ par xionoxid ] C'est koi la difference entre time (0) et time (NULL) les 2 font des nbr aleatoire !??#include #include #i #include circulaires [ par abubu38 ] Salut, J'ai un gros probleme de compilation au niveau des .h :fichier f1.h : #include f2.h class A { // définition nécéssitant la classe Problème de lecture [ par Hades53 ] Voila, j'ai fait un code pour lire des fichiers qui marche, mais il y a un petit problème avec la dernière ligne du fichier qu'on veut lire:si la dern Erreur DeviceIoControl ??? pk acces refusé ? [ par akk ] Bonjour,Voila lorsque j'execute ce code :(on passe le nom du lecteur en parametre exemple : main C)#include #include <iostre [debutant] erreur : Problème d'affichage [ par arwenita ] J'ai un erreur pour afficher une variable : error C2228: left of '.GetAdminPassword' must have class/struct/union typeJe ne comprends pas, ma fonc c++ et mysql [ par toma2194 ] bonsoir,je developpe avec visual studio .net et je souhaite réaliser une appli qui se connecte à une base mysql sur un serveur distant.*j'ai récupéré Recuperer un path et le mettre en handle [ par lcampeur ] J'ai une openDialog sur laquelle je choisi des fichiers. Je recupere leur chemin comme ceci :CString pathFiles[10] ;pathFiles[nbFichiers] = objDialog. GetAsyncKeyState [ par sebleboss2002 ] Bon, c'est encore moi, ce coup-ci, j'ai trouvé (plus ou moins) comment faire ce que je voulais :#include #include <br


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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 : 1,154 sec (4)

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