Нет, Environment.UserName не работает - процедура подключения не вызывается в контексте получателя ввода.
Действительно, я думаю, что это невозможно - хуки _LL, которые вы без сомнения используете при использовании .NET, являются хуками низкого уровня. Мне кажется, что они выполняются задолго до того, как Windows даже определит, какой рабочий стол / приложение получит событие. Возможно, я ошибаюсь - я никогда не использовал ловушки _LL самостоятельно.