Я решил эту проблему с помощью встроенной в Windows XP eventtriggers.exe , которая в основном отслеживает изменения в одном из журналов событий Windows и позволяет запускать компоненты на основе указанных вами критериев.Поскольку это монитор журнала, он обычно запускается после небольшой задержки
Например, следующий код, который будет вызывать BAT-файл с параметром, зависящим от событий, связанных с входом / выходом из системы (однако, к сожалению, это не тактолько фактические вход / выход пользователя, а также системные события и события блокировки компьютера)
eventtriggers.exe /create /tr "logout_occured" /l SECURITY /eid 538 /tk "cmd /c c:\lockhandler.bat LOGOUT_OCCURED"
eventtriggers.exe /create /tr "login_occured" /l SECURITY /eid 528 /tk "cmd /c c:\lockhandler.bat LOGIN_OCCURED"