1

Тема: AHK: Запуск программы/звука по времени

Здравствуйте.
Нужна помощь в создании скрипта. Скрипт должен каждую 59-ую минуту издавать звук (то есть в 6.59, 7.59 итд).
Settimer как я понимаю тут подходит, но только в промежутках в виде часа. А как запустить скрипт на определенную минуту?

2

Re: AHK: Запуск программы/звука по времени

Например, проверять значение встроенной переменной A_Min. Когда оно будет 59, запустить часовой таймер.

3

Re: AHK: Запуск программы/звука по времени

YMP пишет:

Например, проверять значение встроенной переменной A_Min. Когда оно будет 59, запустить часовой таймер.

А можно поподробнее про A_Min в русской документации не нашел про данную переменную

4

Re: AHK: Запуск программы/звука по времени

Есть там её описание: http://www.script-coding.com/AutoHotkey … html#A_Min.
Посмотреть можно так:


MsgBox, %A_Min%

5

Re: AHK: Запуск программы/звука по времени


Min := 59
SetTimer, SoundBeep, % "-" DifferenceTime(Min)
Return

SoundBeep:
    SoundBeep
    SetTimer, SoundBeep, % "-" DifferenceTime(Min)
    Return
    
DifferenceTime(Min)  {
    Time := Time2 := A_YYYY A_MM A_DD A_Hour Min 00
    EnvSub, Time, A_Now, Second 
    Time := (Time * 1000) - A_MSec
    If Time >= 0
        Return Time
    Time2 += 1, hour
    EnvSub, Time2, A_Now, Second
    Return (Time2 * 1000) - A_MSec
}
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

6 (изменено: Smartman, 2013-06-21 12:24:15)

Re: AHK: Запуск программы/звука по времени

Сделал попроще

Otriv:
if a_min=59 
{
 SoundBeep, 2000, 1000
sleep 60000
goto, otriv
}
else 
goto, otriv
return

7 (изменено: serzh82saratov, 2013-06-21 13:45:57)

Re: AHK: Запуск программы/звука по времени

Можно ещё упростить:


Otriv:
if a_min = 59 
{
    SoundBeep, 2000, 1000
    sleep 60000
} 
goto, otriv 

Но решение конечно гениально. Особенно с точки зрения нагрузки на процессор при старте скрипта, пока минуты не равны желаемому, и правильному подходу к тому, что для задачки можно использовать только отдельный скрипт.

Хотя бы так тогда:


Otriv:
if a_min = 59  
    SoundBeep, 2000, 1000
sleep 60000
goto, otriv 
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

8 (изменено: Irbis, 2013-06-21 18:54:34)

Re: AHK: Запуск программы/звука по времени

Использвание Goto тоже не комильфо с тех пор, как существуют более удобные конструкции для создания циклов

sleep A_Min = 59 ? -1 : 1000*(60*(59-A_Min)-A_Sec)
loop { 
    SoundBeep, 2000, 1000
    sleep 3600000 - 1000
}

9

Re: AHK: Запуск программы/звука по времени

Вот это да!!!
Неужели придумали циклы!!!
Не может быть!!!
Вы гений!!!!
Вы прям все тайны знаете.
Ух ничего себе.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

10

Re: AHK: Запуск программы/звука по времени

А почему все утверждают, что Goto это плохо?

11

Re: AHK: Запуск программы/звука по времени

serzh82saratov пишет:

Вот это да!!!
Неужели придумали циклы!!!
Не может быть!!!
Вы гений!!!!
Вы прям все тайны знаете.
Ух ничего себе.

+ OFF

Уважаемый serzh82saratov.
Если Вам, раз уж так случилось, где-то прищемили ЧСВ, не нужно свой негатив выплескивать в непредназначенных для этого местах.
Если ёрничанье и язвительные реплики повышают Вашу самооценку в собственных глазах - пожалуйста, на здоровье. В интернете полно форумов, где  такой стиль  является нормой общения.
Только не надо данный форум опускать до их уровня.

12

Re: AHK: Запуск программы/звука по времени

Уважаемый Irbis.
Вы не так поняли, я просто восхищен глубиной ваших познаний.
И мне очень нравится когда вы глупеньких участников форума в непринуждённой форме ставите на место. Естественно что простое обсуждение с ними чего либо, это ниже вашего заслуженного авторитета. И конечно надо всегда сразу утверждать, что кто-то сделал неправильно, неспрашивая почему, или задумываясь об уместности своих утверждений в каждом случае.
Команда loop - это просто находка! Про неё действительно могут знать только посвящённые программисты.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

13

Re: AHK: Запуск программы/звука по времени

serzh82saratov, пять лет назад в теме "OFF: Русский язык" The gray Cardinal дал ссылку на очень хорошую статью о восклицательных знаках: Три точки, три тире, три точки.

2 all
Если кто-то вдруг переходит на личности, не уподобляйтесь им, сообщите модератору.

14

Re: AHK: Запуск программы/звука по времени

хорошую статью о восклицательных знаках

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

15

Re: AHK: Запуск программы/звука по времени

Malcev пишет:

А почему все утверждают, что Goto это плохо?

Какие-то преданья старины глубокой. По-моему, это уже скорее элемент мифологии. В некоторых ситуациях goto удобная вещь.

16

Re: AHK: Запуск программы/звука по времени

А почему все утверждают, что Goto это плохо?

Впервые услышал такое в школе на уроке по Quick Basic. Как-то связано с тем, что алгоритм теряет вид логической цепочки. При чтении кода трудно проследить принцип работы программы и предсказать результат работы.

17

Re: AHK: Запуск программы/звука по времени

А почему все утверждают, что Goto это плохо?

Нет привычного "Return", код менее нагляден, и более ничего.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui