Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Mortscript i odblokowanie nawigacji - bardzo użyteczne narzędzie.

koala106 07 Mar 2016 17:29 18846 32
  • Program, wymieniony w tytule, to freewarowe narzędzie służące do ?okiełznania? urządzeń wszelkiej maści pracujących na systemach operacyjnych z rodziny Windows CE i Windows Mobile.
    Dzięki temu niezwykle przydatnemu narzędziu możemy przykładowo:
    powyłączać zbędne procesy w celu zwiększenia ilości dostępnej pamięci na urządzeniu,
    zautomatyzować proces uruchamiania kilku programów w sekwencji,
    skopiować określone pliki w określone miejsce,
    utworzyć/skasować wpisy w rejestrze Windows,
    wyłączyć proces blokujący dostęp do GPS,
    ustawić automatycznie poziom głośności, etc.
    W artykule nie będę się skupiał na opisaniu całego programu od A do Z, bo nie ma to sensu, postaram się skupić na najważniejszych najprzydatniejszych rzeczach w codziennej pracy z urządzeniem.

    Mortscript do pracy wymaga określonego zestawu plików są to plik wykonawczy interpretera o nazwie MortScript.exe, biblioteka toolhelp.dll (inna dla Windows CE5 i CE6) oraz właściwy skrypt w pliku o rozszerzeniu mscr i wywołującego pliku exe o takiej samej nazwie jak plik mscr. Wszystkie pliki znajdziecie w załączniku do artykułu.
    Spróbujemy zaraz napisać przykładowy skrypt ? będzie służył on do odblokowania nawigacji Mio Moov 500, która do poprawnej pracy wymaga wyłączenia pliku, który blokuje dostęp do portu GPS (robię opis dla tej wersji, bo była i jest bardzo rozpowszechniona i często spotykana). Po wyłączeniu procesu blokującego dostęp do GPS skrypt uruchomi program nawigacyjny Automapa.
    Z poprzedniego artykułu https://www.elektroda.pl/rtvforum/topic3172250.html odszukujemy jak ma się nazywać plik uruchamiający: Wychodzi na to, że jest to folder Cobia_500_64, a plik ma mieć nazwę auto.exe. Ok, mamy ustalone, więc bierzemy się do dzieła.
    ? na karcie pamięci tworzymy katalog o nazwie Cobia_500_64,
    ? do katalogu kopiujemy następujące pliki: Mortscript.exe, toolhelp.dll, oraz tworzymy plik auto.mscr oraz dodatkowo wywołujący plik, któremu nadajemy nazwę auto.exe
    ? teraz powyłączamy zbędne procesy, w tym celu otwieramy plik auto.mscr w notatniku i wpisujemy następujące sekwencje:
    [code:1]If(ProcExists("AppStartupSec.exe"))
    Kill("AppStartupSec.exe")
    EndIf

    If(ProcExists("SmartST_CE.exe"))
    Kill("SmartST_CE.exe")
    EndIf

    If(ProcExists("MioMap.exe"))
    Kill("MioMap.exe")
    EndIf

    If(ProcExists("CLMApp.exe"))
    Kill("CLMApp.exe")
    EndIf[/code:1]
    ? w następnym kroku chcąc uruchomić plik wykonawczy Automapy, którą zakładam, że mamy zainstalowaną na karcie pamięci dopisujemy na końcu pliku linijkę:
    [code:1]Run("Storage Card\Automapa EU\Automapa EU..exe")[/code:1]
    ? zapisujemy zmiany w pliku,
    ? włączamy urządzenie, pojawia się ekran licencyjny, nic nie naciskamy, tylko wkładamy kartę ? reszta potoczy się sama.
    Jak widać na powyższym przykładzie ? wykorzystałem tylko 3 funkcje z bogatej palety funkcji Mortsrcipta ? funkcję warunkową If(ProcExists), która pozwala wykonać określoną sekwencję poleceń w przypadku potwierdzenia warunku, funkcję Kill, która odpowiada za ?ubicie? procesu o danej nazwie, ostatnią wykorzystaną funkcją była funkcja Run, która pozwala nam na uruchomienie konkretnego procesu z konkretnej lokalizacji i co ważne pozwala na uruchomienie z określonymi parametrami.
    Ok, pierwszy skrypt mamy za sobą, spróbuję teraz pokazać Wam, na przykładzie kolejnego skryptu jak zrobić skrypt, który w zależności, czy w urządzeniu będzie włożona karta pamięci uruchomi jeden program, a jak nie będzie włożonej karty ? uruchomi inny program. Tym razem zrobimy to na przykładzie nawigacji Beckera Z098 (zasada taka sama dla 99% modeli Beckera).

    Wszelkie czynności są banalnie proste ? więc do dzieła - krok po kroku wykonujemy następujące czynności:
    ? podłączamy urządzenie do komputera, czekamy aż będzie widoczne jako dysk wymienny,
    ? odszukujemy folder Igo8, a w nim plik Igo8.exe,
    ? zmieniamy nazwę pliku igo8.exe na inną ? ja zmienię na igo.exe
    ? do folderu igo8 kopiujemy pliki: Mortscript.exe, toolhelp.dll, tworzymy skrypt o nazwie igo8.mscr, a plikowi wywołującemu skrypt nadajemy nazwę igo8.exe
    ? w treści pliku wpisujemy:
    [code:1]wersja = DirExists("\Storage Card")
    If (wersja=1)
    Run("\Storage Card\Automapa EU\Automapa Eu.exe")
    EndIf
    If (wersja=0)
    Run("\My Flash Disk\Igo8\igo.exe")
    EndIf[/code:1]
    ? zapisujemy zmiany w pliku i wyłączamy urządzenie,
    ? sprawdzamy reakcję urządzenia na uruchamianie bez karty pamięci i z włożoną kartą pamięci.
    Oczywiście nic nie stoi na przeszkodzie aby dostosować skrypty do własnych potrzeb i uruchamiać dowolne inne programy ? każdy ma tu pole do manewru.
    Nie chcę nadmiernie rozbudowywać artykułu o wiele procedur ? opisałem na przykładach kilka funkcji, które wykorzystuje się najczęściej i których ja używam na co dzień.

    Więcej o Mortscripcie można znaleźć w manualu:
    http://www.hjgode.de/dev/files/MortScript-Manual.pdf

    ewentualnie na licznych forach, gdzie pojawiają się skrypty z wykorzystaniem MortScripta.

    Piszcie w komentarzach do artykułu, na czym się skupić, jakie skrypty i do jakich urządzeń potrzebujecie ? pomyślę, na czym się skupić w kolejnych artykułach, następny artykuł z cyklu będzie traktował o programie SystemInformation, za którego pomocą stworzymy nakładkę odblokowującą do wybranego modelu urządzenia.

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    koala106
    Poziom 39  
    Offline 
    [b][size=16]Naprawa GPS, aktualizacja map Tomtom VIA, GO, Carminat Live
    Najtańszy kurier!
    Części GPS na sprzedaż
    Specjalizuje się w: nawigacje gps: mio, tomtom, gps odblokowanie naprawa
    koala106 napisał 4381 postów o ocenie 920, pomógł 469 razy. Mieszka w mieście Zielona Góra. Jest z nami od 2005 roku.
  • #2
    bartekblat
    Poziom 9  
    Mam problem z pierwszym skyptem na mio s600. Dodaje w pliku mscr aby ubił proces Spirit.exe jednak proces startuje normalnie a dopiero potem odpala automapa. I jeszcze jedno pytanie. Wyzwalacz w kodzie ma zapisaną nazwe pliku mscr do jakiego sie bd odnosił czy odnosi sie po prostu do pliku o takiej samej nazwie jak wyzwalacz? Pytania z czystej ciekawosci bo z wykorzystaniem drugiego skryptu wszystko działa idealnie.
  • #4
    xJoHnYs
    Poziom 5  
    Witaj gdzie znajdę procesy które należy wyłączyć w Mio s600.

    Oraz gdzie znajdę biblioteki pod CE 6.0 (nigdzie nie mogę znaleźć)
  • #5
    tomek7417
    Poziom 1  
    Witam
    Próbuje odblokować mio s505 za pomocą skryptu 1 ale nie wytłacza w oryginale (mio) gps przez co blokuje AM tak wszystko chodzi AM się odpala wyskakuje że nie może znaleźć GPS .Proszę o jakąś wskazówkę co dalej
  • #6
    arcik9
    Poziom 10  
    Witam.
    Ja mam problem z Mio Spirit 5400LM. Skrypt 1. Gdy kopiuję go "żywcem" nawigacja wisi na ekranie startowym.
    Tak samo dzieje się,m gdy zmienię ścieżkę ze Storage Card na My Flash Disk
    Z góry dziękuję za pomoc.
  • #8
    arcik9
    Poziom 10  
    Już problem rozwiązałem. Aby poprawnie działała AM na Mio Spirit 5400LM w skrypcie 1 zamiast linijki:
    Run("Storage Card\Automapa EU\Automapa EU.exe")
    wprowadziłem :
    Run("\SDMMC\Automapa EU\Automapa EU.exe")

    Mam nadzieję, że kolejne osoby szukające rozwiązania wpadną na moją odpowiedź.
  • #9
    Rafael22
    Poziom 15  
    Panowie potrzebuję programu/skryptu który zamknie nawigacje (nie uśpi).

    Stworzyłem własne menu za pomocą aplikacji SystemInformation.exe.

    Problem w tym, że jak mam nowe menu to nie mam jak zamknąć całowicie nawigację tylko ją hibernuje.
  • #15
    Rafael22
    Poziom 15  
    koala106 napisał:
    W takim razie pozostaje rozwiązanie odpalenia mappera przycisków - odczyt kodu klawisza i w skrypcie zapętlenie go na czas potrzebny do wyłączenia.


    fizyczny przycisk powoduje hibernacje.

    Jedynie w oryginalnym menu nawi mam wybór czy uspić czy zamknąć czy anulować.
  • #19
    mahas
    Poziom 2  
    Witam,
    wałczę z Mio Moov S555, udało mi się odblokować urządzenie, AutoMapa znajduje GPS wszystko działa jak powinno, prawie.
    Korzystając ze skrypt1 zablokowałem proces Spirit.exe i AutoMapa zaczęła uruchamiać się lepiej, zaczęła znajdować moją pozycje.
    Pojawił się jednak inny problem po wpisaniu do auto.mscr komend żeby blokował proces spirit.exe nie mogę poprawnie wyłączyć nawigacji.
    W moim modelu jest przełącznik on/off/reset no wiec nawigacja przestała reagować na sytuacje kiedy jest ustawiona na off, i przez cały czas zostaje włączona.
    Pomozcie prosze !!
  • #21
    mahas
    Poziom 2  
    mahas napisał:
    Witam,
    wałczę z Mio Moov S555, udało mi się odblokować urządzenie, AutoMapa znajduje GPS wszystko działa jak powinno, prawie.
    Korzystając ze skrypt1 zablokowałem proces Spirit.exe i AutoMapa zaczęła uruchamiać się lepiej, zaczęła znajdować moją pozycje.
    Pojawił się jednak inny problem po wpisaniu do auto.mscr komend żeby blokował proces spirit.exe nie mogę poprawnie wyłączyć nawigacji.
    W moim modelu jest przełącznik on/off/reset no wiec nawigacja przestała reagować na sytuacje kiedy jest ustawiona na off, i przez cały czas zostaje włączona.
    Pomozcie prosze !!


    Przepraszam wszystkich!!
    Napisałem swoje to pytanie, a rozwiązanie jest na tym forum w innej dyskusji.
    Gdyby ktoś miał taki sam problem jak ja i trafił w to samo miejsce to rozwiązanie jest tutaj https://www.elektroda.pl/rtvforum/topic1496935-30.html
    Trzeba rozpakować powerbutton.exe do folderu gdzie są pliki z mortscript i w Auto.mscr dodać linijkę
    Run("\Storage Card\SEEKER_T520\PowerButton.exe") (przynajmniej w moim przypadku jest to folder SEEKER_T520 dla innych modeli bedzie inaczej)
  • #23
    the4anoni
    Poziom 12  
    Mortscript i odblokowanie nawigacji - bardzo użyteczne narzędzie. Ps.2. Jakie procesy oprócz 1 i 9 powonieniem ubić w moim skrypcie?
  • #24
    grabaz1982
    Poziom 10  
    Witam. Podepnę się pod temat. Czy ma ktoś może albo wrzucał już skrypt do nawigacji Blaupunkt TP72 . Obecnie brak softa. Wrzuciłem mu oprogramowanie od modecom mx2 zgodnie z instrukcją tu na forum,ale pod koniec instalacji z karty sd wyskakuje mi błąd "setup faily" i muszę zrestartować nawi. Po tym włączyła się normalnie,ale mam tylko czystego WIN Ce 6.0 i nie wiem co dalej. Chciałbym, żeby uruchamiało się jakieś menu po włączeniu albo od razu nawigacja, bo teraz nie mogę jej nawet wyłączyć - tylko usypia ją.
  • #25
    Rafael22
    Poziom 15  
    grabaz1982 napisał:
    Witam. Podepnę się pod temat. Czy ma ktoś może albo wrzucał już skrypt do nawigacji Blaupunkt TP72 . Obecnie brak softa. Wrzuciłem mu oprogramowanie od modecom mx2 zgodnie z instrukcją tu na forum,ale pod koniec instalacji z karty sd wyskakuje mi błąd "setup faily" i muszę zrestartować nawi. Po tym włączyła się normalnie,ale mam tylko czystego WIN Ce 6.0 i nie wiem co dalej. Chciałbym, żeby uruchamiało się jakieś menu po włączeniu albo od razu nawigacja, bo teraz nie mogę jej nawet wyłączyć - tylko usypia ją.


    Nie wiem jak w 72 ale w 50 nie da rady wyłączyć nawigacji kliknięciem poza oryginalnym oprogramowaniem. W TP 50 program do nawigacji to maptrip. Pisałem do firmy MAPTRIP, żeby podpowiedzieli lub udostępnili plik exe odpowiedzialny za wyłączenie nawigacji, ale odpowiedzieli żebym się szamotał z BlauPunktem.
    Tak więc są jedynie dwie opcje do wyłączenia nawi;
    1) przytrzymać fizycznie przycisk ponad 15 sekund.
    2) za pomocą maptrip.exe

    Ja zrobiłem własne manu z iGO Nextgen a opcje wyłączenia zrobiłem tak, że program odpala oryginalne oprogramowanie po czym klika w za mnie w odpowiednie miejsca aby wyłączyć nawigację.

    Jedna wada to igo pokazuje źle stan baterii, to też musiałem się nagłówkować, napisałem skrypt, który sprawdza co kilka sekund stan baterii i jak jest 30%, 20%, 10%, jest komunikat głosowy o niskim stanie baterii.

    U Ciebie rozdzielczość trzeba by było zmienić.
    Link do mojego tematu z menu TP50
    http://www.my-navia.pl/viewtopic.php?t=45307
  • #26
    grabaz1982
    Poziom 10  
    Dzięki za podpowiedź. Problem w tym, że ja nie mam nic w folderze Residentflash, oprócz IGO, które odpalam :) Sprawdzałem już różne panele z karty sd, ale nic nie odpala.
  • #27
    Rafael22
    Poziom 15  
    A pamiętasz jaki przedtem miałeś program? czy maptrip czy inny?
    Aby program odpalił się z automatu lub żebyś miał własne menu, to musisz znać lub próbować jak się oryginał nazywał. Gorzej jak przez próbę zmiany na modecom jakiś wpis w rejestrze w windows się zmienił i nie będzie odwołania do programu.

    Np. u mnie podczas uruchamiania nawigacji szuka pliku
    \ResidentFlash\Maptrip\MapTrip.exe

    Zmieniłam nazwę MapTrip na MapTrip_Oryginal.exe
    a plik MapTrip.exe to skrypt odwołujący się do własnego menu w przypadku kiedy jest karta SD włożona.

    Możliwe, że u Ciebie też to zadziała pod warunkiem, że miałeś MapTrip.
    Może podeszły by też pliki odpowiedzialne za połączenie nawigacji z kompem z TP50, ale nie wiem. Wieczorem mogę Ci podesłać pliki
    \ResidentFlash\MAPTRIP\usblistener.exe
    \ResidentFlash\MAPTRIP\UsbListenerForWinnTec.exe
  • #28
    grabaz1982
    Poziom 10  
    Tak. Ja miałem MAPTrip. Wrzucałem już backup z MapTrip do Resident Flash tak jak to BLAUP TP72 po wrzuceniu i tak odpala mi WIN CE. Te pliki usblistener.exe do połączenia z PC tez posiadam i działają - mogę połączyć się z komputerem. Ja podejrzewam, że coś z rejestrem jest nie tak.
  • #29
    Rafael22
    Poziom 15  
    grabaz1982 napisał:
    Ja podejrzewam, że coś z rejestrem jest nie tak.

    No to spory problem.

    Pliku YFGO2CE.bld nie masz na karcie? bo on powoduje wywołanie Pulpitu Windows CE. Jak masz, to go usuń.

    W sobotę postaram się znaleźć program (chyba go jeszcze mam), który zmieniał menu nawi i była opcja tworzenia kopi rejestru i przywracanie rejestru. To bym zrobił kopię mojego rejestru (tylko czy podejdzie?), wysłał z tym programem. Zrobił byś kopię swojego rejestru na wszelki wielki i spróbował wgrać mój.
  • #30
    grabaz1982
    Poziom 10  
    Tak, mam. Jeśli wyciągnę kartę odpala też, ale wywala błąd na starcie,że brak aplikacji na karcie ssdmmc czy jakoś tak.