Тема: AHK: Подсчет нажатий в окнах разных программ с учетом даты
Добрый день.
Подскажите - как объединить два скрипта.
Первый скрипт - учитывает нажатия клавиш, в определенной программе (как я поняла - это либо Блокнот, либо Тотал Коммандер)
Loop 255
Hotkey, % "~vk" . Format("{:X}", A_Index), WatchPress, On
Return
WatchPress() {
static obj := { TTOTAL_CMD: {text: "Total Commander", count: 0}, Notepad: {text: "Блокнот", count: 0} }
Critical
WinGetClass, winClass, A
if winClass not in TTOTAL_CMD,Notepad
Return
obj[winClass, "count"]++
for k, v in obj
text .= (text = "" ? "" : "`r`n") . v.text . " -" . v.count
Sort, text
oFile := FileOpen(A_ScriptDir . "\1.txt", "w")
oFile.Write(text)
oFile.Close()
}
Второй скрипт просто подсчитывает нажатия клавиш, за текущий день.
storage := A_ScriptDir . "\16.txt"
template := "Нажато клавиш: "
WatchPress := Func("WatchPress").Bind(storage, template)
Loop 248
Hotkey, % "~" . Format("vk{:X}", A_Index + 7), % WatchPress, On
Return
WatchPress(filePath, template) {
Critical
date := A_DD . "." . A_MM . "." . A_YEAR
oFile := FileOpen(filePath, "rw", "cp0")
content := oFile.Read()
RegExMatch(content, "s)(.*\R)?\K.*?(?<PressCount>\d+)\s(?<Date>\d\d\.\d\d\.\d{4})$", lastStr)
dateFit := date = lastStrDate
newLastStr := ( (lastStr && !dateFit) ? "`r`n" : "" ) . template . (dateFit ? ++lastStrPressCount : "1" ) . " " . date
if dateFit
oFile.Pos -= StrLen(lastStr), oFile.Length := oFile.Pos
oFile.Write(newLastStr)
oFile.Close()
}
У меня вопрос - как провести запись в txt с учетом и окна программы и текущей даты ?
Навроде
08.01.2019
Total Commander -100
Блокнот -45
29.01.2019
Total Commander -75
Блокнот -19
...

