C¼üÅ̹³×Ó
¸ù¾Ý¡¶Windows»·¾³ÏÂ32λ»ã±àÓïÑÔ³ÌÐòÉè¼Æ¡·£¨ÂÞÔÆ±òÖø£©ÊéÉϵÄÀý×Ó£¬²ÉÓÃSDKʵÏÖ¼üÅ̼ǼÆ÷!
main.c
#include <windows.h>
#include "resource.h"
#define DEBUG 0
LRESULT CALLBACK HookKeyboardPro(int code,WPARAM wParam,LPARAM lParam);
BOOL CALLBACK ProcDlgMain(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
static HWND hWinMain=NULL;
static HHOOK hHook=NULL;
static WORD szAscii=0;
int WINAPI WinMain(__in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in_opt LPSTR lpCmdLine, __in int nShowCmd )
{
DialogBox(hInstance,MAKEINTRESOURCE(DLG_MAIN),NULL,(DLGPROC)ProcDlgMain);
return 0;
}
BOOL CALLBACK ProcDlgMain(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
#if DEBUG
TCHAR buf[10];
#endif
switch (uMsg)
{
case WM_INITDIALOG:
hWinMain=hwndDlg;
SendMessage(hwndDlg,WM_SETICON,
ICON_BIG,(LPARAM)LoadIcon(GetModuleHandle(0),MAKEINTRESOURCE(IDI_MAIN)));
//×°ÔØ¹³×Ó
hHook=SetWindowsHookEx(WH_JOURNALRECORD,(HOOKPROC)HookKeyboardPro,GetModuleHandle(0),NULL);
if(!hHook)
{
EndDialog(hwndDlg,NULL);
}
break;
case WM_CLOSE:
//ÒÆ³ý¹³×Ó
UnhookWindowsHookEx(hHook);
EndDialog(hwndDlg,NULL);
break;
default:
return FALSE;
}
return TRUE;
}
/************************************************************************/
/* ¹³×Ó´¦Àí¹ý³Ì */
/************************************************************************/
LRESULT CALLBACK HookKeyboardPro(int code,WPARAM wParam,LPARAM lParam)
{
BYTE szKeyState[256];
int size;
PEVENTMSG eventMsg;
#if DEBUG
TCHAR buf[10];
#endif
if(HC_ACTION==code)
{
eventMsg=(PEVENTMSG)lParam;
if(WM_KEYDOWN==eventMsg->message)
{
GetKeyboardState(szKeyState);//µ±Ç°¼üÅÌ״̬ÌîÈ뻺³åÇø
szKeyState[VK_SHIFT]=0XFF&GetKeyState(VK_SHIFT);//»ñÈ¡µÍλ,ÌØÊâÌîдSHIFT¼üɨÃèÂë
//½«ÐéÄâ¼üÅÌÂëת»»ASCIIÂë
size=ToAscii(eventMsg->paramL,HIWORD(eventMsg->paramH),szKeyState,&a
Ïà¹ØÎĵµ£º
ÔÚÇ°ÃæµÄ»ù´¡ÉÏ£¬ÏÂÃæ¿ªÊ¼ÀûÓÃskyeye×Ô´øµÄtestsuitesÖеÄ×ÊÔ´À´ÔËÐÐ×Ô¼ºµÄ³ÌÐòµÄ·½·¨
1.Ê×ÏÈÊÇÏÂÔØÏÂÔØskyeye-1.2.5_REL.tar.gz£¬È»ºó½âѹ¸ÃÎļþ
2.ʹÓÃskyeyeÄ£Äâ°å×Ós3c2410ÔËÐÐij¸ölinux
Ê×ÏȽøÈë½âѹÍêµÄĿ¼£¬È»ºó
cd ./linux/s3c2410/s3c2410x-2.6.14
skyeye –c skyeye.conf –e vmlinux
×¢ÒâµÄÊÇs ......
CÄ£ÄâÃæÏò¶ÔÏóµÄ·½·¨
³éÏóÊý¾ÝÀàÐÍ
Èÿͻ§Ê¹ÓÃÖ¸ÏòûÓй«¿ª¶¨Òå (Ò²Ðí»¹Òþ²ØÔÚÀàÐͶ¨Òåºó±ß) µÄ½á¹¹ÀàÐ͵ÄÖ¸ÕëÊÇÒ»¸öºÃ°ì·¨¡£Ö»Òª²»·ÃÎʽṹ³ÉÔ±, ÉùÃ÷ºÍʹÓà “ÄäÃû” ½á¹¹Ö¸Õë (²»ÍêÈ«½á¹¹ÀàÐÍÖ¸Õë)ÊǺϷ¨µÄ¡£ÕâÒ²ÊÇʹÓóéÏóÊý¾ÝÀàÐ͵ÄÔÒò¡£
ÀàµÄ·½·¨
°Ñº¯ÊýÖ¸ÕëÖ±½Ó¼ÓÈëµ½½á¹¹ÖС£
¼Ì³Ð
Äã¿ÉÒÔʹÓø÷ÖÖ ......
typedefΪCÓïÑԵĹؼü×Ö£¬×÷ÓÃÊÇΪһÖÖÊý¾ÝÀàÐͶ¨ÒåÒ»¸öÐÂÃû×Ö¡£µ±typedefÓë½á¹¹½áºÏʹÓÃʱ£¬»áÓÐһЩ±È½Ï¸´ÔÓµÄÇé¿ö£¬¶øÇÒÔÚCÓïÑÔºÍC++ÀïÃæÂÔÓвî±ð£¬±¾ÎĽ«Ïêϸ½²½âtypedef structµÄÓ÷¨¡£
µÚÒ»Õ typedef struct Óë structµÄÇø±ð
1. »ù±¾½âÊÍ
ty ......
CÏÝÚåÓÚȱÏÝÕâ±¾Ê鵽ͼÊé¹Ý½èÁ˺ܾã¬Ò»Ö±¶¼Ã»ÓÐϸϸµÄ¿´£¬ÏÖÍêÕûµÄ¿´ÁËÖ®ºó°ÑÈÏÎªÖØÒªµÄ£¬Ò»°ãÈË¿ÉÄܺöÊÓµÄÎÊÌâ¸ø×öÁ˱ʼǣ¬Ï£ÍûÓÐËù°ïÖú
2010.02.25
¶þάÊý×é:
int calendar[12][31];
int * p;
int i;
calendar[4]µÄº¬Ò壺
calendar[4]ÊÇcalendarÊý×éµÄµÚ5¸öÔªËØ£¬ÊÇcalendarÊý×éÖÐ12¸öÓÐ×Å31¸öÕûÐÍÔªËØµÄÊý×éÖ®Ò» ......
1. Ê×ÏÈÒªÀí½â¼¸¸ö¸ÅÄ
Îļþ£º °´Ò»¶¨¹æÔò´æ´¢ÔÚ´ÅÅÌÉϵÄÊý¾Ý¼¯ºÏ¡£
ÎļþÃû£º ÄÜΨһ±êʶij¸ö´ÅÅÌÎļþµÄ×Ö·û´®¡£ÐÎʽ£º ÅÌ·û£º\ ·¾¶ \ ÎļþÃû.À©Õ¹Ãû
Îı¾Îļþ:£º Êý¾ÝÒÔÆäÊý×Ö×Ö·ûµÄASCIIÂëÐÎʽ¡¢Ò»¸ö×Ö½ÚÒ»¸ö×ֽڵش洢ÔÚ´ÅÅÌÉÏ¡£
¶þ½øÖÆÎļþ£ºÊý¾ÝÒÔ¶þ½øÖÆÐÎʽÔÚ´æ´¢ÔÚ´ÅÅÌÉÏ¡£
£¨Îı¾ÎļþºÍ¶ ......