遇到了点麻烦:)大家帮看下
void __fastcall TMainForm::TimerTimer(TObject *Sender)
{
POINT Posion1,Posion2;
HANDLE HintHandle;
GetGameHandle();
HintHandle = FindWindow(NULL, "提示信息");
if (HintHandle)
{
if (GameWindows)
{
PostMessage(GameWindows,WM_LBUTTONDOWN,0,(LPARAM)MAKELPARAM(745,565));
PostMessage(GameWindows,WM_LBUTTONUP,0,(LPARAM)MAKELPARAM(745,565));
}
else
{
keybd_event(13,0,0,0);
keybd_event(13,0,KEYEVENTF_KEYUP,0);
}
}
if (!GameWindows && (GetTickCount()-StartTime>5000) && (StartHandle->Text!="") )
{
HANDLE sh;
sh=(HANDLE)StrToInt(StartHandle->Text);
// PostMessage(sh,WM_COMMAND, 0,0 );
PostMessage(sh,WM_LBUTTONDOWN,0,(LPARAM)MAKELPARAM(1,1));
PostMessage(sh,WM_LBUTTONUP,0,(LPARAM)MAKELPARAM(1,1));
StartTime = GetTickCount();
}
if(GetOnePairs(Posion1,Posion2))
{
if(AutoHint->Checked)
{
PaintBox(Posion1.y,Posion1.x);
PaintBox(Posion2.y,Posion2.x);
}
if(AutoRun->Checked)
{
PostMessage(GameWindows,WM_LBUTTONDOWN,0,(LPARAM)MAKELPARAM(GAME_LEFT+48*Posion1.y+22,GAME_TOP+48*Posion1.x+22));
PostMessage(GameWindows,WM_LBUTTONUP,0,(LPARAM)MAKELPARAM(GAME_LEFT+48*Posion1.y+22,GAME_TOP+48*Posion1.x+22));
PostMessage(GameWindows,WM_LBUTTONDOWN ,0,(LPARAM)MAKELPARAM(GAME_LEFT+48*Posion2.y+22,GAME_TOP+48*Posion2.x+22));
PostMessage(GameWindows,WM_LBUTTONUP,0,(LPARAM)MAKELPARAM(GAME_LEFT+48*Posion2.y+22,GAME_TOP+48*Posion2.x+22));
}
}
if(UseTool->Checked)
{
switch(CheckEquipment())
{
case 0:
break;
case 1:
keybd_event('1',0,0,0);
keybd_event('1',0,KEYEVENTF_KEYUP,0);
break;
case 2:
keybd_event('1',0,0,0);
keybd_event('1',0,KEYEVENTF_KEYUP,0);
break;
case 3:
keybd_event('1',0,0,0);
keybd_event('1',0,KEYEVENTF_KEYUP,0);
break;
case 4:
keybd_event((char)(random(3)+2+'0'),0,0,0);
keybd_event((char)(random(3)+2+'0'),0,KEYEVENTF_KEYUP,0);
break;
case 5:
keybd_event((char)(random(3)+2+'0'),0,0,0);
keybd_event((char)(random(3)+2+'0'),0,KEYEVENTF_KEYUP,0);
break;
case 6:
keybd_event((char)(random(3)+2+'0'),0,0,0);
keybd_event((char)(random(3)+2+'0'),0,KEYEVENTF_KEYUP,0);
break;
case 7:
keybd_event((char)(random(3)+2+'0'),0,0,0);
keybd_event((char)(random(3)+2+'0'),0,KEYEVENTF_KEYUP,0);
break;
case 8:
keybd_event((char)(random(3)+2+'0'),0,0,0);
keybd_event((char)(random(3)+2+'0'),0,KEYEVENTF_KEYUP,0);
break;
case 0xFF:
keybd_event('d',0,0,0);
keybd_event('d',0,KEYEVENTF_KEYUP,0);
break;
default: break;
}
}
if(AutoStart->Checked)
{
if(GetStartButton())
{
if(++TimeCount>(2000/Timer->Interval))
{
PostMessage(GameWindows,WM_LBUTTONDOWN,0,(LPARAM)MAKELPARAM(600,565));
PostMessage(GameWindows,WM_LBUTTONUP,0,(LPARAM)MAKELPARAM(600,565));
TimeCount = 0;
}
}
else
TimeCount = 0;
}
}
if(GetOnePairs(Posion1,Posion2)) //GetOnePairs返回布尔值
{
if(AutoHint->Checked)
{
PaintBox(Posion1.y,Posion1.x);
PaintBox(Posion2.y,Posion2.x);
}
特别是这里比较奇怪,Posion1,Posion2只是在这个函数里的局部变量,但是下面又多了个Posion1.y,Posion1.x和Posion2.y,Posion2.x,这4个参数就完全不知道怎么来的
另外就是PostMessage函数转换不过来
兄弟们看看
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课