De nada. A propósito, estás utilizando el "método"
LowLevelKeyboardProc. No sé si habrás leído la documentación en la MSDN (
http://msdn.microsoft.com/en-us/library/ms644985.aspx) pero recomiendan que compruebes el primer parámetro:
A code the hook procedure uses to determine how to process the message. If nCode is less than zero, the hook procedure must pass the message to the CallNextHookEx function without further processing and should return the value returned by CallNextHookEx. This parameter can be one of the following values.