Using Chris's method is better because you do not need to include the Type Library or initialize any events.

However, the DirectInput can access 255 different keys which is better for gaming.