Lua KeyLogger

Cosmo

Известный
Автор темы
Друг
656
2,744
Версия SA-MP
  1. Любая
keylogger-logo.png


Описание:
Показывает последние 15 нажатых вами клавиш на экран.

Команды:
/kl
- Включение/выключение логгера
/kt - Отображение миллисекунд между нажатиями

keylogger.gif


1. Release
2. Переделал обработку нажатий через onWindowsMessage (Спасибо @KiN4StAt)
3. Добавил счётчики миллисекунд между нажатиями (Включаются по команде /kt) + много мелких изменений
4. Поддержка мыши (Спасибо сурсу rKeys от @DonHomka), более точная система подсчёта миллисекунд (через тики), сохранение /kl и /kt после перезахода, убрал говнокод

Внимание!
При распространении скрипта обязательно указывать автора,
либо прикладывать ссылку на эту тему. Буду кидать страйки!
 

Вложения

  • kl.lua
    3.8 KB · Просмотры: 11,332
Последнее редактирование:

YarmaK

Известный
684
245
Круто,но сделал бы ты это красивее,например картинками клавиш и сократить название нумпада,шрифт мб другой или типа того
 

trefa

3d print
Всефорумный модератор
2,111
1,274
Серьёзно? А не лучше использовать событие onwindowmessage
 

Cosmo

Известный
Автор темы
Друг
656
2,744
Серьёзно? А не лучше использовать событие onwindowmessage
Пробовал, не понравилось то, что когда кнопку зажимаешь - он начинает флудить. А мне это не нужно, так как у меня когда клавиша зажата, лог выделяется зелёным цветом.
Пробовал найти в lib/windows/message что-то на подобии wasKeyPressed, но то ли я не нашёл, то ли этого нет
Lua:
function onWindowMessage(msg, wparam, lparam)
    if msg == 0x0100 or msg == 0x0104 then
        local keyname = vkeys.id_to_name(wparam)
        print(keyname)
    end
end
 
  • Нравится
Реакции: Haste и shitcodes

trefa

3d print
Всефорумный модератор
2,111
1,274
Пробовал, не понравилось то, что когда кнопку зажимаешь - он начинает флудить. А мне это не нужно, так как у меня когда клавиша зажата, лог выделяется зелёным цветом.
Пробовал найти в lib/windows/message что-то на подобии wasKeyPressed, но то ли я не нашёл, то ли этого нет
Lua:
function onWindowMessage(msg, wparam, lparam)
    if msg == 0x0100 or msg == 0x0104 then
        local keyname = vkeys.id_to_name(wparam)
        print(keyname)
    end
end
Ну вообще это прописано в доках, и можно поставить условие на нажатие/отпускании кнопки
 
  • Нравится
Реакции: PanSeek, AnWu и Tema05

chapo

чопа сребдс // @moujeek
Модератор
8,934
11,703
наложить на видео получится?
1. пишешь скрипт, который будет рендерить на твой экран зеленый квадрат
2. начинаешь записывать видео, на котором ты будешь нажимать клавиши
3. открываешь Sony Vegas Pro
4. накладываешь эффект "Chroma Keyer"
5. накладываешь на другое видео
1606809462063.png


Lua:
function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
        renderDrawBox(0, 0, 1920, 1080, 0xAA00CC00)
    end
end
 

Valerii Kalashnikov

Известный
292
496
1. пишешь скрипт, который будет рендерить на твой экран зеленый квадрат
2. начинаешь записывать видео, на котором ты будешь нажимать клавиши
3. открываешь Sony Vegas Pro
4. накладываешь эффект "Chroma Keyer"
5. накладываешь на другое видеоПосмотреть вложение 77790

Lua:
function main()
    while not isSampAvailable() do wait(0) end
    while true do
        wait(0)
        renderDrawBox(0, 0, 1920, 1080, 0xAA00CC00)
    end
end
То шо я и говорил при создании этого скрипта. Обойдут быстро, повторят и зальют на бх быстро)
 
  • Нравится
Реакции: YarmaK

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,746
4,831
Пробовал, не понравилось то, что когда кнопку зажимаешь - он начинает флудить. А мне это не нужно, так как у меня когда клавиша зажата, лог выделяется зелёным цветом.
Пробовал найти в lib/windows/message что-то на подобии wasKeyPressed, но то ли я не нашёл, то ли этого нет
Lua:
function onWindowMessage(msg, wparam, lparam)
    if msg == 0x0100 or msg == 0x0104 then
        local keyname = vkeys.id_to_name(wparam)
        print(keyname)
    end
end
Lua:
if bit.band(lParam, 0x4000000) == 0 then
    --код который обрабатывает первое нажатие клавиши
end
 
  • Нравится
  • Влюблен
Реакции: AnWu, darkjer и Cosmo

Cosmo

Известный
Автор темы
Друг
656
2,744
Lua:
if bit.band(lParam, 0x4000000) == 0 then
    --код который обрабатывает первое нажатие клавиши
end
Вот. То что я и искал, заметил что lparam меняется, когда зажимаешь клавишу, а как его правильно хукнуть не знал. Спасибо
 

AnWu

Известный
Всефорумный модератор
4,777
5,400
Вот. То что я и искал, заметил что lparam меняется, когда зажимаешь клавишу, а как его правильно хукнуть не знал. Спасибо
Глянуть сурсы RKeys... Там получение всей инфы...
UPD: Keyex - правый или левый альт/контрл (с шифтом немного по другому, сканкод вроде разный). Keystate - 0 нажата, 1 - удерживается. Scancode - ну и так понятно, сканкод клавиши.
Lua:
local scancode = bitex.bextract(lparam, 16, 8)
local keystate = bitex.bextract(lparam, 30, 1)
local keyex = bitex.bextract(lparam, 24, 1)
 
  • Нравится
Реакции: Cosmo

Dinogo

Новичок
1
0
Описание:
Рендерит последние 15 нажатых клавиш клавиатуры на экран.
В основном это пригодится для ловцов имущества на сервере, в качестве доказательства что вы вводите сами
Присутствует счётчик CPS (Click Per Second) - нажатых клавиш за секунду, по умолчанию выключен

Команды:
/keylog
- Включение/выключение логгера
/showcps - Счётчик CPS

1. Release
2. Переделал обработку нажатий через onWindowsMessage (Спасибо @KiN4StAt)
куда файл кидать?