我在我的一个键盘钩子中设置了一个全局变量bool FRUN,在DllMain中令它为false
LRESULT CALLBACK KeyboardProc(int nCode,WPARAM wParam,LPARAM lParam)
{
if( nCode >= 0 )
{
if( wParam == 0X79 )//当按下F10键时,使它变为TRUE
{
FRUN=true;
keybd_event(69,MapVirtualKey(69,0),0,0);
keybd_event(69,MapVirtualKey(69,0),KEYEVENTF_KEYUP,0);//打出字母E,做测试用
}
}
return CallNextHookEx( glhHook, nCode, wParam, lParam ); 
}
我把这个DLL中的全局变量传给主程序,主程序只有当FRUN为TRUE时才激活,可在游戏中,我按F10却没有把主程序激活,而我却看到有字母E出现,不知道是怎么回事,在WINDOWS界面上测试发现只要主程序处于当前窗口时按F10可以激活,否则没有反应,求救高手,我只有那么多分了,下次有一定再给!