Не знаю, все уже перепробовал! И шифт и контрол и даже раскладки распознает, перестал по два раза повторять(скорее всего ловил событие отпускания клавиши), но... (ненавижу это но

). Все прекрасно работает пока я не перейду в другое окно(сейчас я реализовал запуск кейлоггера как приложение с пустой формой, при создании которой запускается функция из длл, которая ставит процедуру ловушки в очередь). SetWindowsHookEx(WH_KEYBOARD, @KeyboardProc, HInstance, 0). Кстати, что такое HInstance я так и не понял. Это должен быть идентификатор длл, в которой располагается процедура ловушки. Какой идентификатор? Хендл что ли? Думаю, эта ?функция? возвращает хендл длл(или приложения) из которого вызывается. Так вот... Как только я перехожу в другое окно появляется Runtime Error такая-то такая. Любые дальнейшие нажатия клавиш приводят к появлению еще кучи таких сообщений. Если нажимать ок, эксплорер вызывает критическую ошибку... и пошло-поехало

. В чем может быть проблема?