Юзают переменные для разных целей... Прям как я...

Фиг знает, смогу ли я это перевести полностью по этой причине... Во всяком случае, сейчас лучше поспать

Принцип:
Имеется библа. Она содержит две процедуры для сабклассинга и функции установки\удаления хука. Ищется трей. Определяется его ThreadID. Ставится хук WH_WNDPROCRET на этот ThreadID. Это вызывает подгрузку библиотеки в адресное простанство трея (собственно, ради этого хук и ставился, сам-то по себе он не нужен). Как только процедура обработки хука получает первое сообщение, она устанавливает 2 сабклассинга: на сам трей и непосредственно на часики. После этого отлов сообщения, указанного tyomitch'ем, труда не составляет

Кстати, прикольный метод внедрения в чужое адресное пространство
