arunrv Ответов: 2

Как взломать клавиатуру, чтобы проверить, какая клавиша нажата


Всем привет
Я разрабатываю приложение ,которое используется для взлома клавиатуры..
В моем приложении windows мне нужно иметь подробную информацию о клавише, нажатой на клавиатуре компьютера .Мне нужно сохранить все детали нажатия клавиш в файле word или .txt . Я буду думать поздно, чтобы сохранить теперь я хочу, чтобы получить значение, которое было нажато. Я видел в интернете, что это можно сделать через событие нажатия клавиши формы
private void Mainform_KeyPress(object sender, KeyPressEventArgs e)
        {

        }



Но для этого должна появиться форма . Я хочу знать детали нажатия клавиши, не зная пользователя. Даже я использовал событие нажатия клавиши, используя этот код

[DllImport("user32.Dll")]
       public static extern int keybd_event(byte ch, byte scan, int flag, int info);



но этот метод используется для ввода ключевых данных в компьютер . Но мне нужно получить ценность
Так что может ли кто-нибудь сказать мне,как это сделать, есть ли какая-либо ссылка, пример или любая другая DLL .

Заранее Спасибо
Арун

Xeshan Ahmed

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

Xeshan Ahmed

использование клавиатуры глобальные обработчики

2 Ответов

Рейтинг:
2

Sergey Alexandrovich Kryukov

Хорошо, и почему вы поставили эти неправильные пути в свой вопрос, зная, что они могут решить совершенно разные проблемы? Да, все способы, которые вы пробовали, не имеют ничего общего с тем, чего вы хотели достичь. И решение это хорошо известно, обсуждалось на этом форуме много раз.

Но мне бы очень хотелось знать, какую информацию вы хотели бы получить "не зная пользователя". Для меня это слишком похоже на злонамеренную деятельность. Эта проблема серьезнее, чем можно подумать. Я знаю компании, где такая разработка запрещена специальным указом даже для законных целей.

—СА


arunrv

как можно сказать, что это вредоносная деятельность . Есть так много готовых программ, все они уже разработаны и могут выйти на рынок. Но я хочу сделать это сам . Я хочу, чтобы результат понравился . когда пользователь нажимает клавишу "A", я создаю статический путь, где создается txt-файл и в нем будет записана буква "A", точно так же, когда пользователь вводит "G", в нем должна быть написана буква "G"......

Sergey Alexandrovich Kryukov

Я не могу этого сказать. Я говорю, похоже. Я не понимаю, зачем это делать. Почему? Хорошо, правильный ответ-использование крючка Windows. И вот что неправильно: "не зная пользователя". Вы противостоите своему пользователю?
--СА

Xeshan Ahmed

хорошо хорошо

Рейтинг:
17

Xeshan Ahmed

Это просто вы должны зарегистрироваться для клавиатуры global hook

SetWindowsHookEx(int idHook, KeyboardHookProc callback, IntPtr hInstance, uint threadId);

в вашей форме и запустите эту форму в скрытом режиме.В обратного вызова, вы глобальное событие, Хук скопируйте ключ, что требуется и вперед к следующему крюк через
CallNextHookEx(IntPtr idHook, int nCode, int wParam, ref KeyboardHookStruct lParam)


Sergey Alexandrovich Kryukov

Мой 4. Вы также должны были упомянуть, что отдельная библиотека DLL требуется, если крючок является глобальным (в соответствии с документацией Microsoft).
Овации,
--СА

Xeshan Ahmed

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