Отслеживание нажатия на кнопку мыши(и ост. кнопок )

Нужен код для UserControlHook , который отслеживает нажатие на кнопку мыши , изменение раскладки (англ и рус.) , а также нажатие на клавиши : TAB,SHIFT,ALT,CTRL и так далее. Есть код для кнопок , но для остального не нашлось.