themo
(Mchromy)
16 Czerwiec 2010 16:49
#1
Witam
Mam prośbę w połaczeniu z pytaniem, mając taki prosy skrypcik ahk:
#q::
start:
Send {F5}
Sleep, 523111
Send {F5}
sleep, 851312
Send {F5}
sleep, 571322
goto, start
Jak i czy można użyć funkcji random, by ten klawisz funkcyjny byly używany losowo w okresie do 10 minut (chodzi mi o to, żeby w okresie 10 minut byl przynajmniej raz użyty i od nowa to samo).
Jest to możliwe? Proszę o podanie jakiegoś pomocnego skrypu.
Dzięki
grzelix
(Grzelix)
16 Czerwiec 2010 17:54
#2
Kiedys coś w tym pisalem ale teraz dokładnie nie pamietam
Spróbuj coś takiego:
#q::
start:
Random, rand, 0, 10000
sleep, rand
Send {F5}
sleep, 10000 - rand
goto, start
Użycie funkcji: Random - wywołanie, rand - tutaj zwraca wynik, 0,1000 - przedział z którego losuje
pio_95
(pio_95)
16 Czerwiec 2010 18:54
#3
Powyższy kod (autorstwa grzelix) działa, sprawdzone.
Jedyny haczyk to czas. Miało być 10 minut, a jest 10 sekund. W obydwu miejscach zamiast 10000 należy umieścić 600000
Odświeżanie dwukrotnie w czasie poniżej pewnego czasu też może być uciążliwe, chociaż nie musi.
Ewentualnie skrypt z zmienną kontrolną, umożliwia przerwanie skryptu skrótem klawiszowym
#q::
a := 1
loop {
Random, rand, 1000, 600000
sleep, rand
if(a!=1) {
break
}
else {
send {F5}
}
}
return
#a::
a := 0
return
Tutaj przedział w wywołaniu jest bezpośrednio określeniem przedziału czasu.
themo
(Mchromy)
16 Czerwiec 2010 19:55
#4
super dzieki:)
a co trzeba zmienic np umieszczajac 2 takie zadania, zeby jeden w innym czasie dzialal tzn dzialal osobym “loop’em”:
#q::
start:
Random, rand, 0, 300000
sleep, rand
Send {F5}
sleep, 300000 - rand
Random, rand, 0, 600000
sleep, rand
Send {F6}
sleep, 600000 - rand
goto, start
przypuszczam ze mozna stworzyc 2 pliki i uruchomic je ale jesli bym tak nie zrobil to jest jakies latwe rozwiazanie?
pio_95
(pio_95)
17 Czerwiec 2010 11:12
#5
Nie trzeba 2 plików, wystarczą 2 różne klawisze wywołujące funkcję. Każdy hotkey’ów działa osobno.
Wystarczy więc przykładowo:
#q:: jedne instrukcje
return (na wszelki wypadek)
#w:: drugie
A - jeszcze jedno. Wywołanie kodu
sleep, rand
sleep, 600000 - rand
jak to widzę u Ciebie, daje łącznie i tak 10 min. Na pewno nie miało być samego
sleep, rand
?
themo
(Mchromy)
18 Czerwiec 2010 01:03
#6
czy nie mialo byc samego? :x nie wiem, szczerze mowiac, skopiowalem od uzytkownika grzelix…
wybacz moja niewiedze…