Нами всегда движет стремление к новому и «лучшему», и мало кто откажется от «навороченного» тюнинга своего зверька, будь то – рабочий стол в стиле «а ля Сальвадор Дали» или банальная замена встроенного софта на более «продвинутый».
Руководствуясь всем этим, мы порой забываем, что значение Реестра для Windows трудно переоценить – это сердце операционной системы.
Появление всевозможных «глюков» в работе ОС говорит о том, что какие-то настройки Реестра стали некорректными. При серьезном повреждении Реестра операционную систему загрузить невозможно.
Тем не менее, существуют различные способы и механизмы его редактирования:
1. С помощью программ настройки интерфейса, которые поставляются, как правило, с самим девайсом в составе ОЕМ оболочки. Это всем знакомые настройки громкости, подсветки, энергосбережения, USB и пр. Этот способ я бы назвал самым безопасным, т.к. он происходит для нас абсолютно прозрачно и без явного вмешательства в Реестр с нашей стороны.
Назову, лишь, общие места нахождения таких параметров в Реестре.
HKEY_CURRENT_USER\ControlPanel\Desktop, ключ wallpaper = \Windows\WindowsCE.bmp
Лого картинка, видимая на рабочем столе.
HKEY_CURRENT_USER\ControlPanel\Volume
Набор ключей, меняя значения которых, мы устанавливаем значения громкости динамика и звуковое подтверждение тапов по тачскрину.
HKEY_CURRENT_USER\MUI, ключ CurLang
Языковой параметр системы
HKEY_CURRENT_USER\Software\Shell , HKEY_LOCAL_MACHINE\ControlPanel\YFDefault
Набор ключей, меняя значения которых, мы устанавливаем параметры стандартной ОЕМ оболочки системы.
HKEY_CURRENT_USER\ControlPanel\BackLight
Набор ключей, меняя значения которых, мы устанавливаем значения подсветки и энергосбережения девайса.
HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers
Меняя значение Serial_Class на Mass_Storage_Class можно превратить девайс в кардридер.
2. С помощью многочисленных редакторов реестра, которые позволяют делать это прямо на девайсе (например, RegEdit), и редакторы с удаленным доступом, при котором Вы запускаете редактирование прямо на ПК (или на «ББ» - Большом Брате). Редактирование возможно лишь при установленной связи между ПК и девайсом посредством Microsoft ActiveSync (Mobile Center на Windows Vista). Скачать его можно на сайте Майкрософта. В этом случае могу порекомендовать неплохую и простую в использовании программу Registry Work Shop.
Краткая инструкция:
После запуска программы и установлении связи с девайсом в главном окне тапнуть по иконке MobileDevice:
В результате у Вас появится новая вкладка Mobile Device (см. рисунок). Теперь реестр полностью в Вашем распоряжении. Как видите – все очень просто.
В меню File можно сохранять отдельные ветки реестра, а также делать бэкап посредством выбора действия Export (что я очень рекомендую сделать как можно раньше).
Там же можно выбрать действие Import, которое загрузит сохраненную копию реестра или отдельной ветки в Ваш девайс.
Какие ключи и их значения могут представлять интерес для редактирования – решать Вам. Я, лишь, упомяну наиболее часто используемые:
HKEY_CURRENT_USER\ControlPanel\KeyMap
На некоторых девайсах представляет интерес значение ключа KeyGotoCE (если таковой присутствует). Это «секретная» комбинация выхода на рабочий стол Windows при загрузке девайса (без старта встроенной оболочки-шелла).
HKEY_LOCAL_MACHINE\System\Explorer\Shell Folders
Здесь находится описание мест дислокации «системных» папок, в т.ч.:
\My Documents
\Program Files
\Windows\StartUp
\Windows\Desktop
\Application Data и др.
Поменяв, например, значение \Windows\Desktop на \SDMMC\Windows\Desktop, мы позволим сохранять настройки рабочего стола (внешний вид, иконки и пр.) на карте памяти, чтобы эти настройки при следующем запуске WinCE не слетели.
Также многие установленные программы пишут свои настройки в папки \My Documents или \Application Data. Аналогично, поменяв исходные пути, мы можем добиться сохранения этих настроек.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Contro l
Здесь можно увидеть информацию о RomVersion и PlatformName, которая может пригодиться в будущем для восстановления или апдейта девайса.
HKEY_LOCAL_MACHINE\init
Очень важная ветка – при редактировании соблюдать высочайшую осторожность !!! Здесь обозначены сервисы, стартующие при инициализации (старте) ситсемы, отсюда и название.
Следует запомнить навсегда, что процессы device.exe, qwes.exe, services.exe являются системными и не подлежат редактировнию (переустановке порядка запуска, удалению и т.п.).
SERVICES.EXE - Данный процесс является диспетчером управления службами и отвечает за запуск, остановку и взаимодействие с системными процессами.
GWES.EXE - компонент операционной системы Windows CE, графическая оболочка, управляющая окнами и выводом на экран.
DEVICE.EXE – диспетчер всех устройств в системе. Обеспечивает правильную работу встроенного оборудования на программно-аппаратном уровне. Регулирует взаимодействие процессов в памяти и работу драйверов оборудования.
Мы можем изменять только значение ключа Launch50 – YFLoader.exe это запускающий файл встроенной (заводской) оболочки устройства, которую Вы наблюдаете по умолчанию на новом аппарате после включения устройства. На разных девайсах, естественно, может быть разное имя (GpsStart.exe, Launcher.exe и т.п.). Если сюда поставить имя нужной программы, то именно она и будет стартовать при включении. Чаще всего сюда прописывают Explorer.exe, чтобы попасть сразу на рабочий стол.
В этом разделе можно добавлять свои ключи для запуска необходимых программ:
Launch90 = MyProg.exe, например.
Нельзя добавлять номера Launch до 20 и в промежутке от 20 до 60 включительно.
Внимание ! Если вы хотите добавить сюда свои программы для запуска - подумайте еще раз. Если добавленная вами программа не сможет запуститься или зависнет - вы получите нерабочее устройство. Если к нему не удастся подключиться через АктивСинк - вам поможет только перепрошивка. Особенно опасно вносить изменения в HKEY_LOCAL_MACHINE\init на устройстве, работающем в режиме кардридера - подключить к нему АктивСинк точно не получится.
HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\ SDMemory
В ключе Follder прописано название Вашей SD карты так, как ее будет видеть и называть система (например, SDMMC).
HKEY_LOCAL_MACHINE\nls
Языковые настройки системы. Здесь, как правило, меняют значения ключа DefaultLCID, чтобы добиться нормального отображения кириллицы в некоторых приложениях. Прежде чем его поменять – убедитесь, что на Вашем устройстве это уже кто-то делал, и результат был положительным !
Вполне возможно, что на Вашем устройстве несколько другая структура реестра и обозначение ключей, но общий смысл не меняется.
После того, как Вы отредактировали реестр, нужно, чтобы эти параметры вступили в силу (как правило, при следующем запуске).
Я уже говорил, что многие кусты находятся в ОЗУ устройства, и чтобы изменения записались в текущий реестр и вступили в силу, нужно знать следующее:
1) Во внутренней прошивке девайса находится, так называемый, дефолтный реестр. Он находится в виде кустов default.hv и boot.hv в системной папке \Windows. Этот девственно чистый реестр и загружается при старте.
2) Все изменения в текущем реестре, производимые установленными программами или самим пользователем лежат на специально смонтированном скрытом разделе (как правило, RegFat) в файлах user.hv, system.hv. Это именно эти кусты «накладываются» на чистый реестр, и в итоге получается то, что мы видим, когда система полностью загружена.
Так вот, чтобы все исправления, которые мы делаем сами в онлайне, попали в эти кусты надо учитывать, что это происходит, только если есть вызов системного события RegFlushKey (обновление реестра). Не все редакторы сами вызывают это событие, поэтому, чтобы быть точно уверенным, что изменения вступят в силу, надо «усыпить» девайс посредством нажатия кнопки Sleep или выполнив: Start->Suspend в Эксплорере. Если Вы напортачили, но не успели сохранить реестр, то можете просто сделать Reset, тогда все изменения пропадут. Это касается, опять же, только тех редакторов, которые не обрабатывают RegFlushKey.