Воскресенье, 16 декабря 2012 04:44

Разлочка автонавигатора Prestigio GeoVision 5300. Featured

Written by
Rate this item
(0 votes)

altХочется надеяться что эта статья положит начало целому циклу статей по связке микроконтроллер-WinCE. В частности использовать портативное устройство для вывода различного рода информации, например, связать логический анализатор с WinCE.

В свое время мной был куплен автонавигатор Prestigio GeoVision 5300. Естественно целью покупки было использование его по прямому назначению, т.е. именно как автонавигатор.

 

 

 

 

 

 

 

Выбирался навигатор в первую очередь с установленной программой навигации Navitel.

Ну и выбор пал именно на этот навигатор, достаточно удобная оболочка (меню), наличие аудио, видео плееров, стандартных игр и некоторых мелочей, типа калькулятора и конвертера величин. Также на навигаторе установлена операционная система WinCE 5.0.

 

(Хочу сразу сказать, все, о чем пойдет речь в данной статье, вы делаете на свой страх и риск. Автор статьи не может гарантировать работоспособность устройства после вашего вмешательства.).

Естественно, что со временем стало не хватать его функциональности, хотелось использовать его не только как навигатор, но и превратить этого зверька в некое подобие КПК или Планшетника… Ко всему прочему в природе существуют еще и другие программы навигации кроме Navitel: IGO8, Автоспутник, Руссо и много, много, много других. Здесь и начались мои поиски…

Изначально мне было известно, что мой зверек работает под управлением WinCE 5.0, и в первую очередь я стал искать в Интернете программы именно под эту операционную систему. Их оказалось очень много! Но! Со скачки первой же программы , сразу появились вопросы, как вообще их установить на навигатор? Дело оказалось не простым. В принципе все программы под WinCE ничем не отличаются от программ для полноценного Windows, только в большинстве своем не требуют инсталляции, копируются на диск навигатора и запускается исполняемый файл ЕХЕ…

К сожалению, стандартная оболочка моего прибора не позволяет запускать произвольные исполняемые файлы. Поэтому пришлось искать хоть какую то лазейку, чтобы запустить его. Единственная лазейка это программа навигации! На моем навигаторе, да и наверное на подавляющем большинстве других, кроме этой лазейки, других нет. Ну что ж. Есть все необходимое можно приступать. Есть два пути запустить файл:

  • Этот способ совершенно безопасен, т.к. не трогает саму операционную систему. Берем наш исполняемый файл и называем его так, как называется исполняемый файл навигационной программы (в моем случае Navitel.exe) и подменяем его нашим файлом… Дальше включаем навигатор и из меню просто запускаем навигационную программу, но вместо нее запускается наш файл. Считаю  данный способ крайне неудобным ведь чтобы запустить опять навигационную программу нужно делать обратную подмену, а тут без большого брата не обойтись. Получаем некое половинчатое решение, вроде и добились своего но потеряли навигационную программу… Да и много программ таким образом не поставишь, проще сразу отправить своего зверька на помойку и взять КПК или Планшетник…
  • Второй способ более рационален и удобен, но не у всех есть такая возможность. Так же как и первый безопасен. В некоторых навигаторах в настройках можно указать путь к программе навигации, который мы благополучно можем изменить на свой. Таким образом поменяв путь к программе навигации мы можем запустить абсолютно любой файл.

Лично я рекомендую прописать здесь путь к Explorer.exe. Должен будет запускаться чистый рабочий стол. Но в моем случае рабочий стол не появлялся, а только поверх стандартной оболочки кнопка пуск и панель задач. Все мои попытки найти в процессах нужный и убить эту оболочку не увенчались успехом, она продолжала назойливо висеть в памяти и мешаться… Возможно на других навигаторах эту оболочку можно будет и закрыть.

В принципе на этом можно было бы и остановиться, кое кто, конечно же, так и сделает. Но я не стал останавливаться и пошел дальше по пути исследования приборчика.

На данном этапе разлочки моего навигатора был выявлен способ запуска других приложений, сохраняя при этом его родной функционал. Вроде бы этого достаточно, скачать с Интернета интересующие приложения, игры, программы, положить их в любое удобное место на дисках навигатора, а запускать изменением пути к навигационной программе… Но человек такая «скотина», всегда хочет большего. Вот и мне показалось этого маловато, хотелось чего то большего. А именно:

  1. Убить стандартную оболочку.
  2. Запустить чистый рабочий стол WinCE.
  3. При этом еще и не убить самого зверька, который должен продолжать выполнять свои прямые обязанности автонавигатора.

Теперь стоит задача разобраться, как запускается стандартная оболочка, а вместо нее запустить рабочий стол… Вот здесь начинается все самое интересное, но и самое опасное. Мы рискуем получить из рабочего девайса просто трупик…

Для начала я бы рекомендовал временно открыть рабочий стол. Это можно сделать разными способами. Первый: В моем приборе в настройках есть так называемый navi путь. Это путь до исполняемого файла навигационной программы. Достаточно его подменить на explorer.exe и запустить из меню программу навигации. Вместо нее должен открыться рабочий стол. В моем случае открылась только панель задач и меню пуск на фоне штатной оболочки.

Второй способ очень похож. Если в настройках нет возможности сменить путь к навигационной программе можно скачать программу ceDesktop.exe. Ее запуск вызывает появление рабочего стола windows. Далее переименовываем его в исполняемый файл навигационной программы (в моем случае это Navitel.exe) и меняем их местами. В результате, как и в первом случае при запуске программы навигации мы должны увидеть рабочий стол.

Теперь мы убедились, что все программы у нас запускаются и можно приступать к разлочке.

Прежде всего нам необходимо найти программу CeRegEditor. Скачать ее можно здесь http://www.ceregeditor.mdsoft.pl/files/CeRegEdit_Setup_0.0.5.2.exe. Программа предназначена для удаленного редактирования реестра WinCE. Но чтобы ей воспользоваться необходимо подключить свой навигатор к компьютеру. В моем случае используется стандартный кабель USB-miniUSB. Также необходимо поставить ActiveSync если на компьютере Windows XP либо Mobile Device Center если Windows Vista и старше, а также сам навигатор должен подключаться к компьютеру в режиме ActiveSync. После установки всех программ и подключения в моем случае появилось новое устройство GPS System. Далее запускаем программу CeRegEditor и жмем в меню connection пункт connect и мы видим реестр WindowsCE

alt

Как видим реестр очень похож на реестр своего большого брата, у них очень много общего. Но описание всего реестра не входит в цель данной статьи, нас интересует только один ключ и все, HKLM\init\Launch50. Именно он и открыт на данном скриншоте. В первоначальном, заводском варианте значение ключа Launch50, в моем случае было Launcher.exe. Именно эта программа и есть стандартная оболочка, которая запускается сразу после старта Windows. На других устройствах эта программа может называться и по другому, но ключ должен быть всегда один. Изначально я думал, что оболочка, т.е. меню это одна программа, каждая стандартная игра, калькулятор, конвертер, проигрыватель и т.д. это отдельные программы. Но как оказалось все эти возможности спрятаны в один файл! И воспользоваться заводскими программами не будет никакой возможности.

Сейчас наступает самый ответственный момент, от успеха этой операции будет зависеть жизнь нашего пациента. А всего то нам надо только подправить значение ключа реестра Launch50 с Launcher.exe (возможны варианты с исполняемым файлом. Прошу обратить внимание на значение других ключей Launch: device.exe, qwes.exe, services.exe. Это системные файлы, относящиеся к ядру операционной системы и порча этих ключей вообще недопустима.) на Explorer.exe. К этому ключу также нужно отнестись очень аккуратно, т.к. ошибка в слове приведет к невозможности запуска explorer.exe.

Все, теперь перепроверяем правильность наших действий и если все верно то просто перезагружаем наш навигатор. В результате загрузки мы должны увидеть чистый рабочий стол WinCE, он очень похож на рабочий стол windows на большом брате… На скриншоте представлен рабочий стол на моем навигаторе, но уже с накиданными ярлыками. Изначально на рабочем столе были ярлыки только My Device, Recycle Bin и Exit. Остальное уже накидано мной.

alt

Теперь, как я уже упоминал, у нас нет возможности воспользоваться ни проигрывателем, ни калькулятором, ни конвертером, ни другими возможностями стандартной оболочки… Зато у нас есть возможность запускать любые исполняемые файлы точно таким же образом как на большом брате, т.е. двойным кликом. Разница только в том, что здесь кликать по ярлыку придется пальцем либо стилусом. Я бы еще рекомендовал для удобства на рабочий стол вынести ярлыки на часто используемые программы (в частности на программу навигации). Делается это не совсем так как в полноценном windows, т.к. у нас просто-напросто нет правой кнопки мыши. Открываем «мое устройство». Затем ищем, где находится исполняемый файл нужной программы, и делаем на нем пальцем или стилусом клик, но не отпускаем сразу, а продолжаем удерживать пока не появится контекстное меню. Затем выбираем пункт «копировать» и на свободном месте рабочего стола точно таким же образом вызываем контекстное меню и выбираем пункт «вставить ярлык». Так поступаем с каждой часто используемой программой. Так же у нас в меню пуск есть пункты программы, избранное.

alt

Эти пункты меню по сути есть просто папки, содержимое которых и отображается при раскрытии соответствующего пункта меню. В папке программы я сложил все программы которыми я пользуюсь и не пользуюсь. В папке избранное у меня лежат программы типа видео плеера, файлового менеджера, диспетчера задач, скайпа, электронных таблиц, т.е. все то, чем я пользуюсь. Но вот незадача, в упомянутых папках вся информация хранится только до первой перезагрузки. А происходит это потому, что эти папки при загрузке ОС создаются в оперативной памяти и естественно ничего там не может быть сохранено. Все что мы пишем в эти папки реально мы пишем в оперативную память… Но и тут есть возможность обойти этот момент.

Сейчас будем делать из совершенно бесполезных папок, Автозагрузка, программы, избранное, очень полезные папочки. Для этого открываем все тот же реестр и идем в HKLM\System\explorer\shell folders и в значениях ключей видим где какая папка создается. В подавляющем большинстве случаев эти папки создаются в оперативной памяти. Теперь что бы эти папки стали для нас полезны нам надо просто-напросто поменять значения ключей для нужных нам папок.

alt

Лично я не рекомендовал бы сразу бросаться делать все папки физическими. Я бы рекомендовал перенести на физический носитель только 4 папки, рабочий стол, избранное, программы, автозагрузка. Еще можно подумать перенести папку Мои документы… остальные трогать не рекомендую, в основном из-за того, что они нам вряд ли понадобятся вообще. Куда сохранять эти папки это личное дело каждого, лично я сохранил их на внутреннюю флэшь память устройства, но никто не запрещает кинуть их и на внешнюю флэшь память. Теперь кидаем в папку программы все программы, в избранное избранные программы, в папку рабочий стол ярлыки на самые часто используемые программы, в папку автозагрузка ярлыки на программы, которые должны запускаться при старте windows (у меня здесь лежит ярлык на программу VolumeX.exe, аналог регулятора громкости полноценного windows.).

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

 

Обсудить статью и задать вопросы можно на форуме...

Read 5412 times Last modified on Среда, 03 сентября 2014 11:39

Все права принадлежат ChipMK.ru. При копировании материала ссылка обязательна. 2011-2017 © ChipMK.ru

ChipMk.ru Яндекс.Метрика
PRCY.ru