Как сделать часы из старого навигатора на Windows CE

Лет десять назад на рынке операционных систем для мобильных устройств лидировал Windows CE, разгромивший своих конкурентов в виде PalmOS, Symbian и других. Windows CE был везде — в навигаторах, магнитолах, коммуникаторах, КПК и даже в медицинском оборудовании. Но прошло время, и теперь это скорее экзотика, а сами устройства устарели и прочно осели по кладовкам. Одно из них обнаружилось у меня дома в лице китайского навигатора Nexx. После недолгих размышлений было решено сделать из него часы. И у меня это почти получилось…



При старте в навигаторах обычно загружается оболочка от производителя, блокирующая доступ к ОС. Обходится это достаточно легко: вместо файла навигационной программы, напр. Карта:\NaviOne\NaviOne.exe, подкладывается файловый менеджер, напр. TC.exe или cecmd.exe. Запустив его из оболочки как навигационную программу, переходим в папку Windows, запускаем explorer.exe и видим кнопку «Пуск» и часы — Windows в миниатюре.

Теперь можно устанавливать свои программы из cab-файлов. Если инсталятора нет и cab-файлы не устанавливаются (бывает и такое), то можно воспользоваться cabinstl.exe. Бегло поискав полноэкранные часы и ничего подходящего не найдя, решил что проще тряхнуть стариной и написать самому, благо программирование для Windows CE не сильно отличается от большого брата при использовании WinAPI. Результат здесь.

Осталось добавить часы в автозагрузку, чтобы при старте устройства запускалась не оболочка навигатора, а часы. Для этого необходимо изменить раздел реестра HKEY_LOCAL_MACHINE\init при помощи TC.exe (с плагином) или regedit.exe. Править реестр следует с осторожностью, так как имеется шанс окирпичить устройство (что я и сделал, так как, накосячив, обнаружил, что ни прошивки, ни hard-reset для моего навигатора в наличии нет), и не править ключи LaunchXX с номером менее 60 (это системные).

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

P.S. Архив с упомянутыми программами можно взять здесь.
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама

Комментарии 42

    0
    Весьма не энергоэффективно.
      +2
      Большинство навигаторов и сейчас как раз на винЦе. И для разлочки в каждом случае свои методы, или подмена ехе или реестр или флаг файл на карте. Покурили бы 4pna.com 4pda.ru 3ppc.net mihas gpsundrground gpspower etc.
        +3
        У знакомого был навигатор lexand, выход в ось был в самой оболочке в виде иконки.
          0
          Тоже есть девайс, правда фирму не помню. Обновлял на нем карты, заодно поигрался с окнами. Так же переход в неё сделан штатно, из оболочки. Она какая то урезанная.
            0
            Вы правы, я больше скажу, когда сбоит раздел с реестром или с оболочкой в половине современных навигаторов на мстарах процах всяких, то он при включении только рабочий стол и открывает.
          0
          Вообще да, интересная тема. У меня лежит вполне рабочий коммуникатор на WinMobile, там есть практически вся периферия. Хорошо бы его использовать для каких-то целей типа «умного дома» или системы дистанционного (через инет) контроля и управления чем-либо.
          Но для этого нужен софт, возможно какие-то аппаратные расширения (например как из него вытащить возможность управления чем-то внешним… там нет COM-порта, USB без OTG, разве что через аудиоразъем — но для этого нужны какие-то аппаратные решения).
          А для часов такой девайс будет слишком жирно:)
            +1
            там есть блютуз и больше по сути ничего не надо а програмить за милую душу через c# — очень простой легкий и мощный язык VisualStudio2008
            –2
            Углы обзора никакие, глянцевый экран. Дикая для часов прожорливость. Эти «часы» не выполняют своей функции показывать время.

            @Вот так, с помощью нехитрых приспособлений буханку белого (или черного) хлеба можно превратить в троллейбус… Но зачем?@ «Порадовать родителей»? Я бы опасался перегрева и пожара.
              +5

              Эти навигаторы под прямым солнцем в машинах работали днями и сутками, так что перегрев с пожаром вряд ли грозит :) А вот с углами обзора — да, беда.

            • НЛО прилетело и опубликовало эту надпись здесь
              0
              Согласен со всеми, что неэффективно, несуразно и так далее. Однако, для старых устройств особого применения больше не видно: что-то управляющее проще на Arduino/RPi сделать, как читалка — слишком плохой экран, как консоль для игр — слишком плохой клик/слабый проц/маленький экран.
                0
                Я старинный tom tom как mp3 плеер в гараже использую. Карт на него на мой город нет, только направления :)
                0
                Еще бы с фоторамкой научиться что-то делать полезное типа метеостанции с часами
                  0
                  С рамкой намного печальнее. Вроде как иногда можно подобрать адаптер к используемой матрице и превратить ее в дополнительный монитор, но адаптер достаточно дорог.

                  Простого доступа к ОС там не видать.
                    0
                    Если под словом адаптер вы имеете в виду LVDS драйвер, то не такой уж он и дорогой. Цены начинаются с 200 руб. Даже самый простой поддерживает 25 комбинаций разрешения матрицы.
                      0
                      Да он самый. Я бегло эту тему по интернету поизучал — там проблема еще в том, что для разных матриц разные адаптеры нужны и можно промахнуться. Или достаточно только разрешение знать?

                      Возможно стоит копнуть поглубже — что-то много у меня этих матриц набралось :)
                        0
                        Нужно начать с даташита матрицы. Если у неё интерфейс LVDS, то проблем не должно быть. С другими (MiPi, TTL...) сложнее. При размере матрицы 7" и выше LVDS подавляющее большинство. Платы для них на любой вкус: с HDMI, DVI, VGA, ВЧ входом, c УМЗЧ, ПДУ, поддержкой USB. Так что копнуть поглубже стоит.
                    +2
                    Просто часы проще простого. Загрузить 24х60 или 12х60 фоток часов и поставить автосмену каждую минуту:)
                      0
                      А как время выставлять подводить?
                      Включать ровно в 00:00?
                        0

                        Синхронизация по gps :-)

                          0
                          У нас на рвботе одни цеховые часы так включают- стоят высоко и недоступно для коррекции времени.
                        0
                        Вот что я сделал: geektimes.ru/post/262512
                        0
                        У нас старенький навигатор Prology, автоматом стартуют карта навител, но карту можно закрыть и откроется оболочка, с выбором карт, музыки видео и всё такое. Есть также настройки, в которых можно просто указать путь к программе, которую следует запускать при старте устройства.
                        Можно хоть браузер запускать. Виндовый. Это, конечно, полный капец, но возможность есть.
                          +2
                          Некрупная у вас статья. По сути, сводящаяся к тому, что исполняемый файл (любой) нужно сохранить под нужным именем (в разных навигаторах — даже разным; я видел навигаторы, где имя можно было в настройках девайса поменять), и — ого, работает, я гений!

                          На пост на ГТ не тянет, уж извините.
                            0
                            Если там есть браузер, то можно делать часы (и еще кучу всякого разного) с помощью html+js. Очевидно, что можно менять содержимое «программы» на ходу.
                              0
                              Отличная идея.
                              На работе полно устаревших панелей Сименс с СЕ и более древними.
                              Можно даже скриптами дневной\ночной режим заделать. Только обычно они на 24 В постоянки.
                                0
                                Вы про HMI-панели Siemens что ли? И что же в них устарело, позвольте узнать?
                                  0
                                  с переходом на ТИА портал отвалились не поддерживаемые. OP и прочие.
                                    0
                                    Ну так, под Step7+WinCC Flex всё равно ж работают.
                                    Использовать панельки в несколько сотен евро с теми же самыми (самыми основными, т.е.) функциями и возможностями как часы — несколько расточительно, вам не кажется? :)
                                      0
                                      они лежат на складе и их судьба незавидна.

                                      Писать проект для С7 на тиа портале, а для панели на Флексе будет извращением.
                                  0
                                  Из этих панелек можно инет радио сделать. Ethernet — есть, аудиовыход — есть.
                                  0

                                  Основная проблема таких часов — его экран. Подсветка на этих матрицах даже при чнрном фоне и темных цифрах будех хорошо освещать комнату ночью. Ночник получается.


                                  Я так хотел сделать часы на своем старом вп7 смарфоне. В итоге отказался от такой затеи.

                                    –2
                                    Про возможные грабли после установки не родных прошивок WinCE. Дрова могут быть универсальные, но конфиги/константы у разных моделей — отличаться. GPS-навигатор LEXAND ST-565, поставил другую прошивку — через пару дней аккум вздулся, повтор эксперимента — такой же результат. Третья попытка на родной прошивке — все OK.

                                    Чтобы не поднимать флэйм «ты что-то не учел», скажу, я — программист-эмбеддник, поддержка WinCE умерла, а гиктаймс меня всегда привлекал новыми идеями, но никак не молебенами за упокой…
                                      –4

                                      детский лепет какой-то....

                                        0
                                        Спасибо за идею!!!
                                        Отлично подойдут мне для ночного дежурства — и часы, и ночник :-)
                                          0
                                          Лет десять назад на рынке операционных систем для мобильных устройств лидировал Windows CE, разгромивший своих конкурентов в виде PalmOS, Symbian и других.
                                          По данным Gartner, на четвёртый квартал 2007 года WM занимала 11.9% рынка, слегка обгоняя Blackberry OS с 10.9% (правда, в следующий год та вырвалась вперёд, чуть ли не удвоившись) и серьёзно уступая Symbian с 62.3% (правда, доля Symbian уже начинала падать, хотя до темпов Элопа было ещё далеко).
                                          Конечно, мобильные устройства смартфонами не ограничиваются, но странно говорить о лидировании, когда на столь массовом рынке ОС была почти что аутсайдером.
                                            0

                                            Зато сколько замечательных телефонов (PDA)тогда на ebay продавалось именно на WinMobile

                                            0
                                            Жаль, что «статьи» по разработке, в понимании этого слова нет. Как скомпилировать софт, как его установить, что за железка, какие пути прошёл автор. Фото работы, видео работы и т.п. Я поздравляю автора с успехом, но увы, статья совершенно не информативна и не интересна, как войти в мир разработчиков под wince
                                              0
                                              Это могу расписать, кодить для Pocket 2003/2005? Но это настолько старые системы, что даже их поддержка уже завершена Microsoft. В целом вся линейка выглядит загнувшейся, так что особого смысла не увидел.

                                              Если коротко, то достаточно поставить Visual Studio 2005 и выше, и при установке выбрать поддержку мобильных устройств. Потом воспользоваться мастером проектов, создать базовое «Hello World» окно и запустить на поставляемом со Студией эмулятором.
                                              Остальное проганье сильно похоже на обычное WinAPI. Хотя вроде и MFC, и NetFramework имеется (даже не пробовал).

                                              P.S. Работы видео нет, так как я окирпичил устройство. Одна фотка с заглавного поста — это успел случайно сделать.
                                                0

                                                Посмотрите мой последний пост, об этом можно и нужно писать

                                                  0
                                                  Зачем? Вы же сами пишите «Зачем я это сделал — не знаю. Потому что могу, как в старой доброй картинке.» Под Palm действительно специфичное программирование, так что может и есть хоть какой то смысл, а под WinCE — Студия большую часть граблей убирает, если конечно не пытаться использовать её предшественника eMbedded Visual C++.

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

                                            Самое читаемое