www.pudn.com > KeyTrac.rar > KeyTrac.h


//==================================================================== 
// Header file 
// 
// Written for the book Programming WIndows CE 
// Copyright (C) 1998 Douglas Boling 
// 
//==================================================================== 
// Returns number of elements 
# define dim(x) (sizeof(x) / sizeof(x[0])) 
 
//-------------------------------------------------------------------- 
// Generic defines and data types 
// 
struct decodeUINT {							// Structure associates 
	UINT Code;			// messages with a function 
 
	LRESULT ( * Fxn)(HWND, UINT, WPARAM, LPARAM); 
}; 
struct decodeCMD {							// Structure associates 
	UINT Code;								// memu IDs with a function 
	LRESULT ( * Fxn)(HWND, WORD, HWND, WORD); 
}; 
 
//-------------------------------------------------------------------- 
// Generic defines used by appplication 
#define IDC_CMDBAR 1						// Command bar ID 
 
//-------------------------------------------------------------------- 
// Program specific structures 
// 
// Add: your personal code here 
#define FLAG_LMENU     0x0001 
#define FLAG_RMENU      0x0002 
#define FLAG_LCONTROL   0x0004 
#define FLAG_RCONTROL   0x0008 
#define FLAG_LSHIFT     0x0010 
#define FLAG_RSHIFT     0x0020 
 
typedef struct{ 
	UINT wKeyMsg; 
	INT wParam; 
	INT lParam; 
	UINT wFlags; 
	TCHAR szMsgTxt[64]; 
}KEY, *PKEYARRAY; 
 
//-------------------------------------------------------------------- 
// Function prototypes 
// 
int InitApp (HINSTANCE); 
HWND InitInstance (HINSTANCE, LPWSTR, int); 
int TermInstance (HINSTANCE, int); 
 
// Window procedures 
LRESULT CALLBACK MainWndProc (HWND, UINT, WPARAM, LPARAM); 
 
// Message handlers 
LRESULT DoCreateMain (HWND, UINT, WPARAM, LPARAM); 
LRESULT DoPaintMain (HWND, UINT, WPARAM, LPARAM); 
//LRESULT DoHibernateMain (HWND, UINT, WPARAM, LPARAM); 
//LRESULT DoActivateMain (HWND, UINT, WPARAM, LPARAM); 
LRESULT DoDestroyMain (HWND, UINT, WPARAM, LPARAM); 
LRESULT DoKeysMain(HWND, UINT, WPARAM, LPARAM);