dalej mam problem z tym do notatnika czyli tu: SetForegroundWindow(notatnikhwnd); przesyla zawsze sie 1 literka co 1 runde
a tutaj: SetForegroundWindow(testWindow); do okna w internet explorer czasami 2 literki to jest kod:
i to choć to się pokaże zawsze tylko 1 raz cout<<endl<<"nacisnieto 2"<<endl; dla każdego TypeStr("1");//za pomoca keybd_event
np na 6 rund zamiast w internet explorer 6 razy kliknąć jest kliknięto 8 razy
kilka obrazków z działania tego fragmentu kodu:
http://www.image-share.com/ipng-896-95.html
http://www.image-share.com/ipng-896-96.html
widać z kodu że klawisz powinien być naciśnięty 2 razy jednak klawisze były naciśnięte 3 razy 2 razy ten co miał i 1 raz nie wiem jaki ale wywołał ewent w tej grze przeglądowej ten i inny niż miał dodatkowy
nawet zmodyfikowana funkcja przyciskania klawiszy pokazuje że wciśnięty jest tylko 1 klawisz a do intenet explorer czasami przesyłane są2 klawisze:
///////////////////////////////////////////////////////////////////////////////////////////////////////
void TypeStr(char *lpszString)//Napalms elite TypeStr function:
{
char cChar;
while((cChar=*lpszString++)) // loops through chars
{
cout<<"cChar="<<cChar<<endl;
short vk=VkKeyScan(cChar); // keycode of char
cout<<"vk=VkKeyScan(cChar)="<<vk<<endl;
if((vk>>8)&1){keybd_event(VK_LSHIFT,0,0,0);} // hold shift if necessary
keybd_event((unsigned char)vk,0,0,0); // key in
/////////////////////////////////////////////////////////////////////////////////////
cout<<"w funkcji void TypeStr(char *lpszString)"<<endl;
cout<<"po keybd_event((unsigned char)vk,0,0,0); // key in "<<endl;
cout<<" i przed keybd_event((unsigned char)vk,0,KEYEVENTF_KEYUP,0); // key out"<<endl;
if (GetKeyState(0x44) < 0)//D key // wcisniety
{cout<<"d wcisniety"<<endl;}
else{cout<<"d odcisniety"<<endl;}
if (GetKeyState(0x31) < 0)//1 key // wcisniety
{cout<<"1 wcisniety"<<endl;}
else{cout<<"1 odcisniety"<<endl;}
if (GetKeyState(0x32) < 0)//1 key // wcisniety
{cout<<"2 wcisniety"<<endl;}
else{cout<<"2 odcisniety"<<endl;}
if (GetKeyState(0x33) < 0)//1 key // wcisniety
{cout<<"3 wcisniety"<<endl;}
else{cout<<"3 odcisniety"<<endl;}
if (GetKeyState(0x34) < 0)//1 key // wcisniety
{cout<<"4 wcisniety"<<endl;}
else{cout<<"4 odcisniety"<<endl;}
if (GetKeyState(VK_SPACE) < 0)//SPACEBAR (0x20) key // wcisniety
{cout<<"spacja wcisnieta"<<endl;}
else{cout<<"spacja odcisnieta"<<endl;}
for(int i=0;i<0xff;i+=0x01)
{
if (GetKeyState(i) < 0)//D key // wcisniety
{cout<<"wcisniety i= "<<dec<<i<<" hex= "<<hex<<i<<dec<<endl;}
else{}
}
//system("pause");//lub cin.get(); // wait
////////////////////////////////////////////////////////////////////////////////
Sleep((rand()%50+50));
keybd_event((unsigned char)vk,0,KEYEVENTF_KEYUP,0); // key out
if((vk>>8)&1){keybd_event(VK_LSHIFT,0,KEYEVENTF_KEYUP,0);} // release shift if necessary
/////////////////////////////////////////////////////////////////////////////////////
cout<<"w funkcji void TypeStr(char *lpszString)"<<endl;
cout<<"po keybd_event((unsigned char)vk,0,0,0); // key in "<<endl;
cout<<" i po keybd_event((unsigned char)vk,0,KEYEVENTF_KEYUP,0); // key out"<<endl;
if (GetKeyState(0x44) < 0)//D key // wcisniety
{cout<<"d wcisniety"<<endl;}
else{cout<<"d odcisniety"<<endl;}
if (GetKeyState(0x31) < 0)//1 key // wcisniety
{cout<<"1 wcisniety"<<endl;}
else{cout<<"1 odcisniety"<<endl;}
if (GetKeyState(0x32) < 0)//1 key // wcisniety
{cout<<"2 wcisniety"<<endl;}
else{cout<<"2 odcisniety"<<endl;}
if (GetKeyState(0x33) < 0)//1 key // wcisniety
{cout<<"3 wcisniety"<<endl;}
else{cout<<"3 odcisniety"<<endl;}
if (GetKeyState(0x34) < 0)//1 key // wcisniety
{cout<<"4 wcisniety"<<endl;}
else{cout<<"4 odcisniety"<<endl;}
if (GetKeyState(VK_SPACE) < 0)//SPACEBAR (0x20) key // wcisniety
{cout<<"spacja wcisnieta"<<endl;}
else{cout<<"spacja odcisnieta"<<endl;}
for(int i=0;i<0xff;i+=0x01)
{
if (GetKeyState(i) < 0)//D key // wcisniety
{cout<<"wcisniety i= "<<dec<<i<<" hex= "<<hex<<i<<dec<<endl;}
else{}
}
//system("pause");//lub cin.get(); // wait
////////////////////////////////////////////////////////////////////////////////
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
cout<<endl<<"2 wypisanie ostatecznego wyboru reki:"<<endl;
cout<<endl<<" reka nr :"<<index_wybranej_reki<<endl;
cout<<endl<<"index_wybranej_reki_dod reka nr :"<<index_wybranej_reki_dod<<endl;
//system("pause");//lub cin.get(); // wait
SetForegroundWindow(testWindow);
SetCursorPos(width11+(rand()%150+440), height11+(rand()%150+340));
Sleep((rand()%150+200));
mouse_event(MOUSEEVENTF_LEFTDOWN,0 ,0,0,0);
Sleep((rand()%50+100));
mouse_event(MOUSEEVENTF_LEFTUP,0 ,0,0,0);
Sleep((rand()%50+100));
if(tab_do_koncowego_sortowania_[4][0]==0)
{
//SendKeys::SendWait("d");
TypeStr("d");//za pomoca keybd_event
cout<<endl<<"nacisnieto d"<<endl;
Sleep(123);
SetForegroundWindow(notatnikhwnd);
TypeStr("d");//za pomoca keybd_event
//SendMessage (testWindow12, WM_CHAR, 'd', 0); //wysylanie do nieaktywnego okna
cout<<endl<<"nacisnieto d"<<endl;
//system("pause");
goto next;
}
if(index_wybranej_reki==1)
{
//SendKeys::SendWait("1");
TypeStr("1");//za pomoca keybd_event
cout<<endl<<"nacisnieto 1"<<endl;
Sleep(123);
SetForegroundWindow(notatnikhwnd);
TypeStr("1");//za pomoca keybd_event
//SendMessage (testWindow12, WM_CHAR, '1', 0); //wysylanie do nieaktywnego okna
cout<<endl<<"nacisnieto 1"<<endl;
// system("pause");
}
if(index_wybranej_reki==2)
{
//SendKeys::SendWait("2");//czasami za 1 razem nacisnie 2 razy
TypeStr("2");//za pomoca keybd_even
cout<<endl<<"nacisnieto 2"<<endl;
Sleep(123);
SetForegroundWindow(notatnikhwnd);
TypeStr("2");//za pomoca keybd_event
//SendMessage (testWindow12, WM_CHAR, '2', 0); //wysylanie do nieaktywnego okna
cout<<endl<<"nacisnieto 2"<<endl;
// system("pause");
}
if(index_wybranej_reki==3)
{
//SendKeys::SendWait("3");
TypeStr("3");//za pomoca keybd_event
cout<<endl<<"nacisnieto 3"<<endl;
Sleep(123);
SetForegroundWindow(notatnikhwnd);
TypeStr("3");//za pomoca keybd_event
//SendMessage (testWindow12, WM_CHAR, '3', 0); //wysylanie do nieaktywnego okna
cout<<endl<<"nacisnieto 3"<<endl;
//system("pause");
}
if(index_wybranej_reki==4)
{
//SendKeys::SendWait("4");
TypeStr("4");//za pomoca keybd_event
cout<<endl<<"nacisnieto 4"<<endl;
Sleep(123);
SetForegroundWindow(notatnikhwnd);
TypeStr("4");//za pomoca keybd_event
//SendMessage (testWindow12, WM_CHAR, '4', 0); //wysylanie do nieaktywnego okna
cout<<endl<<"nacisnieto 4"<<endl;
// system("pause");
}
next:
Sleep((rand()%150+200));
SetForegroundWindow(testWindow2);
system("pause");//lub cin.get(); // wait
//////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////
void TypeStr(char *lpszString)//Napalms elite TypeStr function:
{
char cChar;
while((cChar=*lpszString++)) // loops through chars
{
cout<<"cChar="<<cChar<<endl;
short vk=VkKeyScan(cChar); // keycode of char
cout<<"vk=VkKeyScan(cChar)="<<vk<<endl;
if((vk>>8)&1){keybd_event(VK_LSHIFT,0,0,0);} // hold shift if necessary
keybd_event((unsigned char)vk,0,0,0); // key in
Sleep((rand()%50+50));
keybd_event((unsigned char)vk,0,KEYEVENTF_KEYUP,0); // key out
if((vk>>8)&1){keybd_event(VK_LSHIFT,0,KEYEVENTF_KEYUP,0);} // release shift if necessary
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////