Pozwoliłem sobie założyć nowy wątek - może się komuś przyda kiedyś. Jeśli jest w niewłaściwym miejscu proszę o przeniesienie go.
W wątku o
polecanych programach pojawił się Speech commander. Bardzo sympatyczny program, ale byłby zupełnie rewelacyjny, gdyby można go było uruchamiać za pomocą przycisku na kablowych słuchawkach. Okazało się, że ten przycisk nie może zostać oprogramowany. Przygotowałem więc skrypt, który pozwala go wykorzystać. Sztuczka jest bardzo prosta - przycisk ten uruchamia Speed Voice Dialing. Skrypt czeka więc na uruchomienie tego programu, zamyka go i w jego miejsce uruchamia Voice Commandera. Tam również dostępne jest wybieranie głosowe więc strata żadna :-) Uruchamiana aplikacja jest zdefiniowana w pierwszym wierszu skryptu - można sobie ją zamienić na cokolowiek innego. Skrypt testowany na SPV M650 i ROMie Artemis Touch 4.2:
#Należy podać pełną ścieżkę do aplikacji, która ma zostać uruchomiona
aplikacja="\Storage Card\Program Files\Cyberon.Speech.Commander\VoiceCommander.exe"
#wyłączenie obsługi błędów do takiego poziomu, żeby funkcja WaitFor nie krzyczała, że nie znalazła okna
ErrorLevel("syntax")
#Nie kończąca się pętla
while (1)
#Czekamy przez 5 minut na okno o tytule "Voice Speed"
WaitFor("Voice Speed",600)
if (WndExists("Voice Speed"))
#Zamknij okno o nazwie "Voice Speed"
close("Voice Speed")
#Uruchom aplikację
Run (aplikacja)
#Sprawdzamy co sekundę czy okno Voice Commandera jest aktywne
sleep(3000)
tytul = ActiveWindow()
while(WndActive(tytul))
sleep(1000)
endwhile
#Jeśli nie jest aktywne zamykamy program
close(tytul)
#...i gasimy ekran dla oszczędności energii
ToggleDisplay(0)
endif
endwhile
Skrypt zjada przeciętnie ok. 5% procesora. Niestety, za chudy w uszach jeszcze jestem, żeby toto dobrze zaprogramować (to mój pierwszy skrypt) więc zabić się go da wyłącznie Task Managerem.
Wszelkie prawa ogólnie dostępne :-) Poprawki i usprawnienia mile widziane.