Masz rację. _IsPressed nie nadaje się do keyloggera. Można by wstawić sleepowanie w pętle nawet na ułamek sekundy co znacznie odciążyłoby pracę procesora, ale wtedy istniałoby prawdopodobieństwo, że nie wszystkie klawisze zostaną zalogowane.
Co do _WinAPI_SetWindowsHookEx jeszcze nie miałem okazji się tym pobawić, ale być może w najbliższym czasie posiedze na tą funkcją. Chodzi o zwykłe założenie hooka na klawiaturę.
Zauważ, że w helpie masz bardzo pomocny example właśnie z hooka na klawiaturę. Zerknij na konsolę podczas działania programu.