Создание пакетов для прошивки из CAB-файлов
Часть 1. Информационная и подготовительная
Существуют разные способы получения пакетов для прошивки из CAB-файлов. Ранее я делал это вручную, распаковывая CAB-файл и создавая все части пакета ручками. Это было не так уж и долго, но весьма муторно. Мы же рассмотрим самый простой вариант - с помощью утилиты OEMCompile от ArHon-а.
Итак, на первом шаге, берем из аттача утилиту и распаковываем в какую-нибудь папку. Например, OEMCompile.
Все, первый этап завершен.
Часть 2. Создание пакета для прошивки из CAB-файла
Для наглядности создание пакета будем рассматривать на реальном примере - создания пакета из ThrottleLauncher v0.95 (ThrottleLauncher0.9.5c.CAB).
1. В папке OEMCompile создаем дочернюю подпапку пакета: Throttle095
2. Кидаем в эту подпапку CAB-файл: ThrottleLauncher0.9.5c.CAB
3. Запускаем OEMCompile с параметром имени папки пакета: OEMCompile.exe Throttle095
4. После отработки OEMCompile у нас в папке пакета будет распакованный CAB файл, но он нас не интересует. А вот новосозданный пакет будет в папке с добавлением перед именем папки пакета префикса C_PACKAGE_: C_PACKAGE_Throttle095
5. Идем в папку новосозданного пакета C_PACKAGE_Throttle095 и проверяем новый RGU-файл реестра. Обычная проблема - наличие переменной подстановки пути инсталляции %InstallDir%. Меняем ее на правильный путь инсталляции, который можно посмотреть в initflashfiles.txt пакета. В данном случае в initflashfiles.txt видим путь инсталляции \Program Files\ThrottleLauncher. Соответственно меняем все вхождения %InstallDir% в RGU-файле на
\\Program Files\\ThrottleLauncher (обратите внимание на двойные слеши, в реестре путь задается через двойные слеши вместо одинарных, иначе будет ошибка при компиляции реестра). Обычно, на данном этапе с RGU-файлом это все. Но при желании просматриваем и корректируем его дополнительно так, как нам надо (например, уже известные нам настройки программы можно сразу внести).
6. Дополнительно обычно нужно еще просмотреть все LNK-файлы (.lnk) ярлыков. Опять же на предмет замены %InstallDir% на путь реального размещения программы. В нашем примере таких файлов 2, в обоих меняем %InstallDir% на \Program Files\ThrottleLauncher (одинарные слеши).
7. RGU-файл, initflashfiles.txt и т.д. также проверяем на наличие других переменных, заключенных в % (редко, но встречается). Соответственно, меняем на нужные значения.
8. При желании правим пути и названия в initflashfiles.txt. Также проверяем на правильность системных путей в пакете относительно своей прошивки (обычно - автозапуск, подпапки документов и т.п.)
9. Идем в папку OEMCompile и создаем наполнение DSM-файла: BuildDsm.exe C_PACKAGE_Throttle095. После этого он уже не нулевой длины.
10. Вставляем пакет в прошивку, собираем, шьем и проверяем. Если все Ок, то и отлично Иначе правим свои ошибки, повторяя шаги 5-9...
Дополнительно:
1. После запуска новосозданной прошивки и настройки программы можно просмотреть ее реестр и файл настроек на коммуникаторе при их наличии в конкретном случае (или сделать все это еще до сборки пакета - просто заранее установив CAB-файл).
2. Файл настроек добавляем в пакет (или меняем имеющийся там со значениями по умолчанию на свой).
3. Настройки реестра вносим в RGU-файл пакета.
4. Правим initflashfiles.txt при необходимости (например, системные пути в пакете отличаются от наших).
5. Обновляем DSM-файл при необходимости (изменилось число или названия файлов).
6. Опять собираем прошивку, шьем и проверяем
Все. Удачных сборок новых пакетов!
Русская версия Invision Power Board (http://nulled.cc)
© Invision Power Services (http://nulled.cc)