Утилиту так и не увидел.
Использую утилиту для CG3.4 для контроля пробочной информации и её обновления в случае устаревания ( а так же для контроля сети )
На экран выводит время с момента последнего апдейта пробок .
#NoTrayIcon ; не отображать значок скрипта в трее
#SingleInstance force ; перезагрузить скрипт, если он уже запущен
#NoEnv ; запрещаем имена переменных как у переменных окружения
SendMode Input ; ускорренный ввод
#Persistent ; держать скрипт запущенным
SetTitleMatchMode 2 ; 2 - заголовок окна должен содержать значение, заданное в WinTitle
DetectHiddenWindows, On
; ----------- редактируемые переменные - настройки ------------
cityguide := "City Guide" ; название окна CityGuide
cityguidelite := "City Guide Lite" ; название окна CityGuideLite
myjamfile := "C:\Program Files\MIT\City Guide\78SPb.jam" ; за каким файлом пробок следим (боевой)
jamgreen := 8 ; до скольки минут считать возраст пробок зеленым
jamred := 40 ; до скольки минут считать возраст пробок красным
empty := "нет" ; что пишем на экране, если пробочный файл очень старый
xPosition := 700 ; x-позиция на экране
yPosition := 305 ; y-позиция на экране
; -------- конец редактируемых переменных - настроек ----------
CityGuideActive := 0
Custom1Color := "600305"
Custom2Color := "036005"
MyTextEmpty := ""
gui, color, 000000
gui, font, s34 bold, Arial
Gui, Add, Text, c%Custom1Color% x200 y200 w130 h70 vMyRed, %MyText3%
Gui, Add, Text, c%Custom2Color% x0 y0 w130 h70 vMyGreen, %MyText1%
Gui, +LastFound +AlwaysOnTop
WinSet, TransColor, 000000 200
Gui, -Caption
Gui, Show, x%xPosition% y%yPosition% w130 h70 NoActivate, CGJAM
JamShow := 1
SetTimer, ShowHideJam ; отслеживать показ на экране только в окне СитиГида
SetTimer, SwitchText, 10000 ; проверять файл пробок каждые 10 секунд
SetTimer, SwitchProbki, 200000 ; обновлять файл пробок каждые 100 секунд
return
GuiSize:
If (Errorlevel = 1)
Gui, Restore ; противодействуем минимизации окна
ShowHideJam:
WinKill, Error
WinKill, About Cursor Hider
WinKill, Google Планета Земля: Предлагаемое обновление
Act := 0
IfWinActive, %cityguide%
{
Act := 1
}
Else
{
IfWinActive, CGJAM
{
Act := 1
}
}
If (Act = 1)
{
If (JamShow <> 1)
{
WinShow, CGJAM
JamShow := 1
}
}
Else
{
If (JamShow = 1)
{
WinHide, CGJAM
JamShow = 0
}
}
If CityGuideActive = 0
{
IfWinActive, %cityguide%
{
; CityGuide не был запущен, а сейчас найден в списке окон
CityGuideActive := 1
}
}
Else
{
CityGuideActive := 0
}
return
SwitchProbki:
; обновляем пробки
IfWinActive, %cityguide%
{
MouseClick, Left, 1035, 36 ; обновить пробки
sleep 2000
MouseClick, Left, -564, 36
; send, {F5}
CityGuideActive := 1
}
Else
{
CityGuideActive := 0
}
return
SwitchText:
; Получаем время файла пробок
FileGetTime, OutputVar, %myjamfile%
mhour := Substr(OutputVar, 9, 2)
mmin := Substr(OutputVar, 11, 2)
; Собираем текущую отметку времени (в минутах)
currconntimestamp := A_Min + A_Hour*60
lastjamtimestamp := mmin + mhour*60
If (currconntimestamp + 5 < lastjamtimestamp)
currconntimestamp := currconntimestamp + 24*60
; Получаем возраст файла пробок
jamtime := currconntimestamp - lastjamtimestamp
If (jamtime > 9)
{
jamtime := " " . jamtime
}
Else
{
jamtime := " " . jamtime
}
jamexpired := 0
If (currconntimestamp > lastjamtimestamp + jamgreen)
jamexpired := 1
If (currconntimestamp > lastjamtimestamp + jamred)
jamtime := empty
; тут надо нарисовать цветом возраст пробочного файла
If (jamexpired = 0)
{
; Делаем зеленым
GuiControl, Move, MyRed, x200 y200 ; сдвигать надо, чтобы красный текст не исчезал при показе
GuiControl, Text, MyRed, %MyTextEmpty%
GuiControl, Text, MyGreen, %jamtime%
GuiControl, Move, MyGreen, x0 y0
}
Else
{
; Делаем красным
GuiControl, Move, MyGreen, x200 y200 ; сдвигать надо, чтобы красный текст не исчезал при показе
GuiControl, Text, MyGreen, %MyTextEmpty%
GuiControl, Text, MyRed, %jamtime%
GuiControl, Move, MyRed, x0 y0
}
return
Написана под autohotkey !
Для режима тестировани сети корректируйте параметры обращения к серверу CityGuide ( ну например каждые 3 сек )
з ы ... это не логгер конечно ( такой задачи не было ) , но качественное представление даёт )