Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: WinAPI
Войти
Регистрация
Восстановить пароль
 
lepus007
0 / 0 / 0
Регистрация: 05.09.2015
Сообщений: 37
#1

Эмуляция нажатия кнопок

19.08.2017, 18:46. Просмотров 499. Ответов 3
Метки нет (Все метки)

Хочу сделать l2mult, это программа которая в свернутое окно шлет нажатие клавишь.
Тот кто сталкивался, или может хоть немного намекнуть в чем проблема. Очень надеюсь на вашу помощь. Потому что свои идеи просто закончились, гуглю уже 2й день. Залез в такие дебри! До написание своего драйвера клавиатуры.
И так! код ниже работает с приложениями (калькулятор, блокнот, lintage2 ) но не совсеми клиентами л2. Связано это наверно с защитой антибот SmartGuard.
Delphi
1
2
3
4
5
6
7
var
  H: HWND;
begin
  H := FindWindow('l2UnrealWWindowsViewportWindow', 'TheMega.ru');
  H := FindWindowEx(H, 0, 'l2UnrealWWindowsViewportWindow', nil);
  PostMessage(H, WM_KEYDOWN, 112, 0);
end;
За любую подсказку буду благодарен.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2017, 18:46
Ответы с готовыми решениями:

Эмуляция нажатия клавиши без использования WinAPI
Есть приложение, эмуляция нажатия клавиш клавиатуры и мыши в которое...

Эмуляция кнопок мыши
Я хочу эмулировать нажатие кнопок мыши. Например если я нажму левую кнопку...

Перехват нажатия кнопок
Надо что бы при нажатии кнопки Windows, на клавиатуре, не появлялось меню...

Калькулятор (перевод нажатия клавиш клавиатуры в нажатие кнопок)
Здравствуйте. У меня тут проблема-не могу запрограммировать калькулятор, чтобы...

Как написать автоустановочник путем перехвата и имитации нажатия кнопок
Вот в частности хочу установить qip . Хотелось бы создать программу, которая бы...

3
Shaft44
2 / 2 / 2
Регистрация: 11.11.2013
Сообщений: 19
19.08.2017, 22:51 #2
Не знаю что такое клиент л2, но если ты гуглишь второй день то видимо это игра. Если так то игры используют DirectInput который работает напрямую с драйвером клавиатуры и на сообщения ему пофиг. Пару лет назад писал автокастер умений для League of Legends но до исходника доберусь не раньше понедельника. Если это терпит то в понедельник скину пример, если не терпит то читай про DirectInput
0
lepus007
0 / 0 / 0
Регистрация: 05.09.2015
Сообщений: 37
20.08.2017, 12:11  [ТС] #3
Клиент л2 это игра. LIneage II. попробую использовать directinput. Очень буду благодарен за исходник. Спасибо что ответили на мой вопрос!
0
Shaft44
2 / 2 / 2
Регистрация: 11.11.2013
Сообщений: 19
21.08.2017, 13:34 #4
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const KEYEVENTF_SCANCODE:Cardinal=8;
 
procedure SendKey(key:Word; t:Integer);
var
  Inp:TInput;
begin
  Inp.Itype:=1;
  Inp.ki.wScan:=key;
  Inp.ki.dwFlags:=KEYEVENTF_SCANCODE;
  SendInput(2, Inp, SizeOf(Inp));
  Sleep(t);
  Inp.ki.dwFlags:=KEYEVENTF_KEYUP;
  SendInput(2, Inp, SizeOf(Inp));
end;
key:Word - клавиша
t:Integer - время в миллисекундах, сколько клавишу держать нажатой.

Клавиши(не все, тут только те что были нужны мне)
P.S. D0-D9 это цифры от 0 до 9 соответственно
Кликните здесь для просмотра всего текста

DirectInputKey.A:=30;
DirectInputKey.B:=48;
DirectInputKey.C:=46;
DirectInputKey.D:=32;
DirectInputKey.E:=18;
DirectInputKey.F:=33;
DirectInputKey.G:=34;
DirectInputKey.H:=35;
DirectInputKey.I:=23;
DirectInputKey.J:=36;
DirectInputKey.K:=37;
DirectInputKey.L:=38;
DirectInputKey.M:=50;
DirectInputKey.N:=49;
DirectInputKey.O:=24;
DirectInputKey.P:=25;
DirectInputKey.Q:=16;
DirectInputKey.R:=19;
DirectInputKey.S:=31;
DirectInputKey.T:=20;
DirectInputKey.U:=22;
DirectInputKey.V:=47;
DirectInputKey.W:=17;
DirectInputKey.X:=45;
DirectInputKey.Y:=21;
DirectInputKey.Z:=44;
DirectInputKey.D0:=11;
DirectInputKey.D1:=2;
DirectInputKey.D2:=3;
DirectInputKey.D3:=4;
DirectInputKey.D4:=5;
DirectInputKey.D5:=6;
DirectInputKey.D6:=7;
DirectInputKey.D7:=8;
DirectInputKey.D8:=9;
DirectInputKey.D9:=10;
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.08.2017, 13:34

Перехват и эмуляция клавиш
Здравствуйте, помогите написать программу которая будет перехватывать нажатие...

Эмуляция нажатия кнопок вне активоного окна
Как сделать чтобы при нажатии на F1 срабатывало действие, то есть эмуляция...

Имитация нажатия кнопок клавиатуры нажатиями кнопок в окне
Скажите,как заменить нажатие кнопок клавиатуры на нажатие кнопок в окне?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru