Оцените код, нужно ли что-то в доработке?

VuTuV

Участник
Автор темы
51
1
1 скрипт, который каждый раз при запуске перекачивает 2.
AutoHotKey:
if !A_IsAdmin && !%False%
{
    {
        Run *RunAs "%A_ScriptFullPath%" ,, UseErrorLevel
        if !ErrorLevel
            ExitApp
    }
    MsgBox 68, Ошибка запуска,
    (
    Для правильной работы программы нужны права Администратора.
    `n
    Продолжить в любом случае, нажмите "Да".  Для отмены нажмите "Нет".
    )
    IfMsgBox Cancel
        ExitApp  
}
#NoTrayIcon
#NoEnv
#SingleInstance, force
Gui, Font, S35 CDefault, Times new roman
Gui, -Border
Gui, Add, Text, x2 y-2 w422 h105 +Center, Ожидайте.Идёт скачивание скрипта.
Gui, Show, w428 h105, [INFO] Загрузка скрипта.
FileDelete, %a_temp%/radmir/radmir.ahk
IfnotExist, %A_temp%\RADMIR
{
    FileCreateDir, %A_temp%\RADMIR
}
IfnotExist, %A_temp%\RADMIR\close.png
{
    URLDownloadToFile, https://i.imgur.com/SRI5iy6r.png, %a_temp%/RADMIR/close.png
}
IfnotExist, %A_temp%\RADMIR\tik2.wav
URLDownloadToFile, https://drive.google.com/uc?authuser=0&id=1R3LnYPdTdPCl6_jUOyNk2lsvoU7GSSRZ&export=download, %a_temp%/radmir/radmir.ahk
Run, %a_temp%/radmir/radmir.ahk
ExitApp
return
AutoHotKey:
Menu, Tray, Add, Автор, avtor
Menu, Tray, Add, Выключить программу, close
Menu, Tray, NoStandard
#NoEnv
#SingleInstance, force
IniRead, Nick, %a_temp%\radmir\radmir-trk.ini, EditHot, Nick
GuiControl,, Nick, %Nick%
IniRead, Rang, %a_temp%\radmir\radmir-trk.ini, EditHot, Rang
GuiControl,, Rang, %Rang%
IniRead, Teg, %a_temp%\radmir\radmir-trk.ini, EditHot, Teg
GuiControl,, Teg, %Teg%
IniRead, Key1, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key1
GuiControl,, Key1, %Key1%
IniRead, Key2, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key2
GuiControl,, Key2, %Key2%
IniRead, Key3, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key3
GuiControl,, Key3, %Key3%
IniRead, Key4, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key4
GuiControl,, Key4, %Key4%
Naz = RADMIR RP | ТРК "Ритм"
GUI, Color, 0xD2691E
Gui, Font, S15 CDefault, Times New Roman
Gui, -Caption -Border
Gui, Add, Picture, x370 y0 w30 h30 gClose, %a_temp%\RADMIR\close.png
Gui, Add, Text, x2 y36 w268 h28 +Center, Редактирование объявления.
Gui, Add, GroupBox, x2 y18 w393 h57 ,
Gui, Add, Hotkey, x280 y36 w105 h28 vKey1,  %Key1%
Gui, Add, Text, x12 y84 w259 h28 +Center, Войти в прямой эфир.
Gui, Add, GroupBox, x2 y65 w393 h57 ,
Gui, Add, Hotkey, x280 y84 w105 h28 vKey2, %Key2%
Gui, Add, Text, x12 y132 w259 h28 +Center, Выйти из прямого эфира.
Gui, Add, GroupBox, x2 y113 w393 h57 ,
Gui, Add, Hotkey, x280 y132 w105 h28 vKey3,  %Key3%
Gui, Add, Text, x12 y180 w259 h28 , Спросить, Вы что-то хотели?
Gui, Add, GroupBox, x2 y161 w393 h57 ,
Gui, Add, Hotkey, x280 y180 w105 h28 vKey4, %Key4%
Gui, Add, GroupBox, x204 y353 w192 h76 ,
Gui, Add, Button, x12 y372 w172 h48 gSave, Сохранить.
Gui, Add, GroupBox, x2 y353 w192 h76 ,
Gui, Add, Button, x213 y372 w172 h48 gOk, OK
Gui, Add, GroupBox, x2 y209 w393 h57 ,
Gui, Add, Text, x12 y228 w259 h28 +Center, Ваш ник-нейм.
Gui, Add, Edit, x280 y228 w105 h28 vNick, %Nick%
Gui, Add, GroupBox, x2 y257 w393 h57 ,
Gui, Add, Edit, x280 y276 w105 h28 vRang, %Rang%
Gui, Add, Text, x12 y276 w259 h28 +Center, Введите Вашу должность.
Gui, Add, GroupBox, x2 y305 w393 h57 ,
Gui, Add, Text, x12 y324 w259 h28 +Center, Введите Ваш ТЭГ.
Gui, Add, Edit, x280 y324 w105 h28 vTeg, %Teg%
Gui, Show, w403 h434, %Naz%
return
close:
SoundPlay %a_temp%\radmir\tik2.wav
RunAs, %a_temp%\RADMIR\RADMIR.ahk
Sleep 300
ExitApp
return
Save:
SoundPlay %a_temp%\RADMIR\tik2.wav
Sleep 300
Gui Submit, NoHide
IniWrite, %Nick%, %a_temp%\radmir\radmir-trk.ini, EditHot, Nick
IniWrite, %Rang%, %a_temp%\radmir\radmir-trk.ini, EditHot, Rang
IniWrite, %Teg%, %a_temp%\radmir\radmir-trk.ini, EditHot, Teg
IniWrite, %Key1%, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key1
IniWrite, %Key2%, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key2
IniWrite, %Key3%, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key3
IniWrite, %Key4%, %a_temp%\radmir\radmir-trk.ini, KeyHot, Key4
Reload
return
avtor:
run, http://vk.com/aleksey064,, UseErrorLevel
if errorlevel
{
 GuiControl,, serialdescription, Не удалось открыть ссылку.
}
return
Ok:
SoundPlay %a_temp%\tik2.wav
if (Key1)
Hotkey, % Key1 , off, UseErrorLevel
Gui, Submit, NoHide
Hotkey, % Key1, Метка1, on UseErrorLevel
if (Key2)
Hotkey, % Key2 , off, UseErrorLevel
Gui, Submit, NoHide
Hotkey, % Key2, Метка2, on UseErrorLevel
if (Key3)
Hotkey, % Key3 , off, UseErrorLevel
Gui, Submit, NoHide
Hotkey, % Key3, Метка3, on UseErrorLevel
if (Key4)
Hotkey, % Key4 , off, UseErrorLevel
Gui, Submit, NoHide
Hotkey, % Key4, Метка4, on UseErrorLevel
gui, minimize
return
Метка1:
SendMessage, 0x50,, 0x4190419,, A
Sendinput, {F6}/do В сумке лежил рабочий планшет для редактирования объявлений.{ENTER}
sleep 1000
Sendinput, {F6}/me расстегивает сумку, достает планшет, включает его.{ENTER}
sleep 1000
Sendinput, {F6}/me нажимает на ярлык на рабочем столе "Редактирование/ТРК"{ENTER}
sleep 1000
Sendinput, {F6}/do Приложение открылось.{ENTER}
sleep 1000
Sendinput, {F6}/me приступает к редактированию объявлений.{ENTER}
Sendinput, {F6}/edit{ENTER}
return
Метка2:
SendMessage, 0x50,, 0x4190419,, A
Sendinput, {F6}/me нагинается к аппаратуре, вставляет штекер микрофона в нужный разъем.{ENTER}
sleep 1000
Sendinput, {F6}/me нажимая на кнопку, включает микрофон, говорит в микрофон, дабы проверить его.{ENTER}
sleep 1000
Sendinput, {F6}/do Микрофон в рабочем состоянии. Готов к эфиру.{ENTER}
sleep 1000
Sendinput, {F6}/me нажимает на кнопку выхода в эфир.{ENTER}
sleep 1000
Sendinput, {F6}/do На табло горит надпись "В ЭФИРЕ! ТИШИНА!".{ENTER}
Sendinput, {F6}/efir{ENTER}
return
Метка3:
SendMessage, 0x50,, 0x4190419,, A
Sendinput, {F6}/me выходит из эфира, нажимая на кнопку "Выйти из эфира".{ENTER}
sleep 1000
Sendinput, {F6}/do На табло погасла надпись "В ЭФИРЕ! ТИШИНА!".{ENTER}
sleep 1000
Sendinput, {F6}/me отключает микрофон, вытаскивает провод из разъема, складывает микро в ящик.{ENTER}
Sendinput, {F6}/efir{ENTER}
return
Метка4:
SendMessage, 0x50,, 0x4190419,, A
Sendinput, {F6}Добрый день. Я работник ТРК "Ритм" - "%nick%"{ENTER}
sleep 1000
Sendinput, {F6}Вы что-то хотели? Со всеми вопросами можете обращаться ко мне.{ENTER}
Return

Metka:
{
}
:?:/r::
SendInput, {F6}/r [%Teg%]{Space}
return
Я бы хотел узнать, как-то можно улучшить скрипт?
 
Последнее редактирование:

BASS_DEVSOFTWARE

Известный 🇺🇦
Друг
263
569
Читай циклом файл.
IniRead открывает и закрывает файл, а у тебя тут не единичное открытие и это влияет на производительность.
В цикле используй массив, чтобы каждый параметр читался и сохранялся в СВОЕЙ переменной.