evka144
30.09.2015, 03:24
Здравствуйте дорогие форумчане, я совсем не давно начала программировать и мне нужна ваша помощь. :reddy:
Мне нужна имитация отправки низкоуровневых сигналов которая позволяла бы посылать сигналы управления с клавиатуры или мыши в обход защите некоторых клиентских игр, ну или что то другое если существует метод попроще. Обычный SendInput() или keybd_event() естественно не проходят. В данном тестовом коде через 3 секунды постоянно должна нажиматься клавиша А (в данном случае шаг влево). В переключении на обычный блокнот работает и пишет строчку из этой буквы, а в клиенте совсем не реагирует. Я недавно начала изучать с++ и не знаю существует ли библиотека или синтаксис позволяющий такое сделать поэтому обращаюсь к вам.
Пример используемого мной кода :
#include <windows.h>
#include <iostream>
using namespace std;
int main()
{
INPUT ip;
int x=1;
Sleep(3000);
ip.type = INPUT_KEYBOARD;
ip.ki.wScan = 0;
ip.ki.time = 0;
ip.ki.dwExtraInfo = 0;
while (x!=0)
{
ip.ki.wVk = 0x41; // A
ip.ki.dwFlags = 0; // KEYPRESS
SendInput(1, &ip, sizeof(INPUT));
Sleep(100);
ip.ki.dwFlags = KEYEVENTF_KEYUP; // KEYRELEASE
SendInput(1, &ip, sizeof(INPUT));
Sleep(500);
}
Sleep(5000);
return 0;
}
*почему я решила что мне нужна именно имитация ps/2.
Раньше я использовала кликерман который является скриптовым языком и при подключении туда пс2 режима нажатие клавиш спокойно себе проходило. Но стыд и позор мне если бы я не стремилась к большему, поэтому если кто то сможет мне дать пример работающего кода на с++ с нажатием клавиш или наводку на то как это сделать было бы очень хорошо. На сайберфоруме мне посоветовали изучить принцип работы перехватчиков и для чего они используются, но полезной информации к сожалению найти для себя не смогла.
Мне нужна имитация отправки низкоуровневых сигналов которая позволяла бы посылать сигналы управления с клавиатуры или мыши в обход защите некоторых клиентских игр, ну или что то другое если существует метод попроще. Обычный SendInput() или keybd_event() естественно не проходят. В данном тестовом коде через 3 секунды постоянно должна нажиматься клавиша А (в данном случае шаг влево). В переключении на обычный блокнот работает и пишет строчку из этой буквы, а в клиенте совсем не реагирует. Я недавно начала изучать с++ и не знаю существует ли библиотека или синтаксис позволяющий такое сделать поэтому обращаюсь к вам.
Пример используемого мной кода :
#include <windows.h>
#include <iostream>
using namespace std;
int main()
{
INPUT ip;
int x=1;
Sleep(3000);
ip.type = INPUT_KEYBOARD;
ip.ki.wScan = 0;
ip.ki.time = 0;
ip.ki.dwExtraInfo = 0;
while (x!=0)
{
ip.ki.wVk = 0x41; // A
ip.ki.dwFlags = 0; // KEYPRESS
SendInput(1, &ip, sizeof(INPUT));
Sleep(100);
ip.ki.dwFlags = KEYEVENTF_KEYUP; // KEYRELEASE
SendInput(1, &ip, sizeof(INPUT));
Sleep(500);
}
Sleep(5000);
return 0;
}
*почему я решила что мне нужна именно имитация ps/2.
Раньше я использовала кликерман который является скриптовым языком и при подключении туда пс2 режима нажатие клавиш спокойно себе проходило. Но стыд и позор мне если бы я не стремилась к большему, поэтому если кто то сможет мне дать пример работающего кода на с++ с нажатием клавиш или наводку на то как это сделать было бы очень хорошо. На сайберфоруме мне посоветовали изучить принцип работы перехватчиков и для чего они используются, но полезной информации к сожалению найти для себя не смогла.