AHK || Сохранение переменной

scuka

Известный
Автор темы
6
0
Есть простой счетчик (Нужен для работы), нужно что бы он не сбрасывался после перезагрузки пк\программы. С файлами работать не умею, по этому и прошу помощи
Сам код ниже:
Код:
Gui, +ToolWindow +AlwaysOnTop
Gui, Font, Verdana s13
Gui, Add, Text, vCounter w36 Right, 0
Gui, Show,, Счётчик
Return

!Space::
    GuiControlGet, Counter
    Counter := Counter + 1
    GuiControl,, Counter, %Counter%
Return[/URL]
 

Kvisk

Известный
210
222
Ну сохрани свою переменную в файл, и при запуске скрипта читай её
AutoHotKey:
#NoEnv

FileRead, Counter, %A_Temp%/Counter.txt
FileDelete, %A_Temp%/Counter.txt
if (Counter = "")
    Counter := 0

Gui, +ToolWindow +AlwaysOnTop
Gui, Font, Verdana s13
Gui, Add, Text, vCounter w36 Right, %Counter%
Gui, Show,, Счётчик
Return

!Space::
GuiControlGet, Counter
Counter := Counter + 1
GuiControl,, Counter, %Counter%
Return

!1::
GuiControlGet, Counter
Counter := 0
GuiControl,, Counter, %Counter%
return

GuiClose:
FileAppend, %Counter%, %A_Temp%/Counter.txt
ExitApp
return
При закрытии окна на крестик, значение сохранится в файлик. При новом запуске файлик считается и удалится. Если файлика нет, будет стандартное значение 0, сбросить alt+1 ну думаю понятно
 
  • Нравится
Реакции: scuka

scuka

Известный
Автор темы
6
0
Ну сохрани свою переменную в файл, и при запуске скрипта читай её
AutoHotKey:
#NoEnv

FileRead, Counter, %A_Temp%/Counter.txt
FileDelete, %A_Temp%/Counter.txt
if (Counter = "")
    Counter := 0

Gui, +ToolWindow +AlwaysOnTop
Gui, Font, Verdana s13
Gui, Add, Text, vCounter w36 Right, %Counter%
Gui, Show,, Счётчик
Return

!Space::
GuiControlGet, Counter
Counter := Counter + 1
GuiControl,, Counter, %Counter%
Return

!1::
GuiControlGet, Counter
Counter := 0
GuiControl,, Counter, %Counter%
return

GuiClose:
FileAppend, %Counter%, %A_Temp%/Counter.txt
ExitApp
return
При закрытии окна на крестик, значение сохранится в файлик. При новом запуске файлик считается и удалится. Если файлика нет, будет стандартное значение 0, сбросить alt+1 ну думаю понятно
Благодарю, это то что мне нужно было
 

darksoor

Известный
679
355
Ну сохрани свою переменную в файл, и при запуске скрипта читай её
AutoHotKey:
#NoEnv

FileRead, Counter, %A_Temp%/Counter.txt
FileDelete, %A_Temp%/Counter.txt
if (Counter = "")
    Counter := 0

Gui, +ToolWindow +AlwaysOnTop
Gui, Font, Verdana s13
Gui, Add, Text, vCounter w36 Right, %Counter%
Gui, Show,, Счётчик
Return

!Space::
GuiControlGet, Counter
Counter := Counter + 1
GuiControl,, Counter, %Counter%
Return

!1::
GuiControlGet, Counter
Counter := 0
GuiControl,, Counter, %Counter%
return

GuiClose:
FileAppend, %Counter%, %A_Temp%/Counter.txt
ExitApp
return
При закрытии окна на крестик, значение сохранится в файлик. При новом запуске файлик считается и удалится. Если файлика нет, будет стандартное значение 0, сбросить alt+1 ну думаю понятно

Костыльный метод, который удаляет и создает файл... Не проще ли воспользоваться старым добрым файлом конфигурации (.ini).

AutoHotKey:
IniRead, var, %A_ScriptDir%\config.ini, Setup, var
; Чтение файла конфигурации в переменную var

IniWrite, %new_var%, %A_ScriptDir%\config.ini, Setup, var
; Запись в файл конфигурации
 
  • Нравится
Реакции: Proganet, scuka и Kvisk

Kvisk

Известный
210
222
Костыльный метод, который удаляет и создает файл... Не проще ли воспользоваться старым добрым файлом конфигурации (.ini).

AutoHotKey:
IniRead, var, %A_ScriptDir%\config.ini, Setup, var
; Чтение файла конфигурации в переменную var

IniWrite, %new_var%, %A_ScriptDir%\config.ini, Setup, var
; Запись в файл конфигурации
я хотел через ini, но я забыл команду записи, кстате спасибо что напомнил, а времени лазить и искать не было. Вот и результат, хотя даже этот костыльный метод не так уж и плох
 

#Rin

Известный
Всефорумный модератор
1,214
1,043
  • Нравится
Реакции: ShuffleBoy и scuka

scuka

Известный
Автор темы
6
0
Можно. https://autohotkey.com/docs/Variables.htm#Gui

Так же можно использовать RegRead, RegWrite для сохранения значения переменной.
К сожалению мой уровень английского не позволяет пользоваться данной статьей. Не мог бы помочь с реализацией? В любом случае спасибо за ссылку
 

#Rin

Известный
Всефорумный модератор
1,214
1,043
  • Нравится
Реакции: ShuffleBoy