I use WM_KEYDOWN and WM_KEYUP in my winproc messages to do this.