ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |

03.12.2009, 19:38
|
|
Banned
Регистрация: 03.11.2009
Сообщений: 112
Провел на форуме: 98006
Репутация:
17
|
|
Переназначение клавиш
Собственно, у кого есть какие мысли по поводу:например, сделать так что бы при нажатии на славишу alt печатолось слово ПРИВЕТ(не в отдельной просграмме, а в Windows в целом).
Scancode Map не предлагать, так как мне нужно задать фразу на клавишу. Я понимаю что надо с хуками работать, но не могу сообразить как...
Последний раз редактировалось DeaD_MoroZ; 03.12.2009 в 20:10..
|
|
|

03.12.2009, 23:35
|
|
Участник форума
Регистрация: 04.06.2009
Сообщений: 176
Провел на форуме: 840493
Репутация:
0
|
|
хм перехватывать клавишу alt допустим..
|
|
|

04.12.2009, 05:36
|
|
Banned
Регистрация: 03.11.2009
Сообщений: 112
Провел на форуме: 98006
Репутация:
17
|
|
Сообщение от SultanOFF
хм перехватывать клавишу alt допустим..
обсолютно не понял ответа... тебе для справки: код клавиши ALT --> 164
а код "привет" --> 71,72,66,68,84,78
Последний раз редактировалось DeaD_MoroZ; 04.12.2009 в 05:40..
|
|
|

04.12.2009, 07:00
|
|
Познающий
Регистрация: 17.07.2009
Сообщений: 47
Провел на форуме: 131272
Репутация:
4
|
|
В архиве трейнер к игрушке, когда то занимался, вот чей то сорец завалялся, в нём как раз то чт тебе нуна
_http://narod.ru/disk/15642683000/Trainer.template.delphi-M_A_R_T.rar.html
P.S. если я правильно тебя понял...
|
|
|

04.12.2009, 11:41
|
|
Познающий
Регистрация: 28.01.2009
Сообщений: 90
Провел на форуме: 432613
Репутация:
80
|
|
procedure SendKey(H: Hwnd; Key: char);
procedure SendShift(H: HWnd; Down: Boolean);
var vKey, ScanCode, wParam: Word;
lParam: longint;
begin
vKey:= $10;
ScanCode:= MapVirtualKey(vKey, 0);
wParam:= vKey or ScanCode shl 8;
lParam:= longint(ScanCode) shl 16 or 1;
if not(Down) then lParam:= lParam or $C0000000;
SendMessage(H, WM_KEYDOWN, vKey, lParam);
end;
procedure SendCtrl(H: HWnd; Down: Boolean);
var vKey, ScanCode, wParam: Word;
lParam: longint;
begin
vKey:= $11;
ScanCode:= MapVirtualKey(vKey, 0);
wParam:= vKey or ScanCode shl 8;
lParam:= longint(ScanCode) shl 16 or 1;
if not(Down) then lParam:= lParam or $C0000000;
SendMessage(H, WM_KEYDOWN, vKey, lParam);
end;
var vKey, ScanCode, wParam: Word;
lParam, ConvKey: longint;
Shift, Ctrl: boolean;
begin
ConvKey:= OemKeyScan(ord(Key));
Shift:= (ConvKey and $00020000) <> 0;
Ctrl:= (ConvKey and $00040000) <> 0;
ScanCode:= ConvKey and $000000FF or $FF00;
vKey:= ord(Key);
wParam:= vKey;
lParam:= longint(ScanCode) shl 16 or 1;
if Shift then SendShift(H, true);
if Ctrl then SendCtrl(H, true);
SendMessage(H, WM_KEYDOWN, vKey, lParam);
SendMessage(H, WM_CHAR, vKey, lParam);
lParam:= lParam or $C0000000;
sleep(50);
SendMessage(H, WM_KEYUP, vKey, lParam);
if Shift then SendShift(H, false);
if Ctrl then SendCtrl(H, false);
end;
procedure SendString(H: HWND; s: string);
var i: integer;
begin
for i:=1 to Length(s) do SendKey(H, s[i]);
end;
procedure timer;
var PT: TPoint;
begin
while true do begin
GetCursorPos(PT);
getasynckeystate(164);
if getasynckeystate(164)<>0 then SendString(WindowFromPoint(PT),'Привет!');
sleep(1);
end;
end;
var TID: cardinal;
begin
createthread(nil,0,@timer,nil,0,TID);
end.
Отправляет в любое окно, но надо мышкой подвести указатель к тому окну =)
|
|
|

04.12.2009, 13:49
|
|
Banned
Регистрация: 03.11.2009
Сообщений: 112
Провел на форуме: 98006
Репутация:
17
|
|
Спасибо. Но я сделал по своему, и у меня один вопрос:как сделать что бы полностью заблокировать функцию кнопки(программа при нажатии home печатает "привет" и при повторном переходит в начало строки и опять печатает "привет")
Мож кому надо--> http://slil.ru/28295384 пароль:serega
Последний раз редактировалось DeaD_MoroZ; 04.12.2009 в 20:21..
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|