Добро пожаловать, гость ( Вход | Регистрация )
| -=CHE@TER=- |
May 5 2007, 09:47
Сообщение
#1
|
|
Walter Sullivan ![]() ![]() ![]() Группа: Root Admin Сообщений: 1,402 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 325 раз(а) |
BenQ-Siemens S68 и темы для него
или ода о разработчиках Семёна Ы68 руки-из-жопы Не так давно попросил меня знакомый помочь ему сделать свою тему для его BenQ-Siemens S68. Темы лежат в файле .SDT, который представляет из себя просто-напросто переименованный .ZIP-архив. Распаковав и изменив там всё что нужно, столкнулись с такой проблемой: при запаковке обратно в .ZIP (WinRAR'ом или WinZIP'ом) получившийся файл (переименованный обратно в .SDT) не открывался телефоном - шло сообщение, что формат неверный. Даже при банальной распаковке/запаковке без изменения файлов - всё-равно шло сообщение про "неверный формат". Ну что делать - полез я на сайт семёна, искать редактор тем. Что меня там дико разочаровало: 1) Ничего оттуда скачать нельзя, пока не зарегистрируешься (бесит, ну ладно) 2) Редактор занимает 22 мегабайта (!!!), но он [далее идут местные идиоматические выражения, отражающие душевное состояние автора на тот момент, когда он скачал этот редактор и обнаружил, что тот] не идёт, если не скачать к нему ещё Java 1.4.0, который тоже весит весьма нехило. Трафик у меня дорогой, так что я был просто злой как чёрт и удавил бы любого из разработчиков этой адской конторы, если бы мне хоть один из них попался под руку. И только потом я (признаю - тупень) занялся тем, чем нужно было заняться с самого начала: откопал документацию на .ZIP (см. "Application Note on the .ZIP file format") (заодно узнал, что в 2008-ом ему будет 20 лет) и стал смотреть, что там можно было такое написать, чтобы не запортить сам формат, но и при этом пометить файл, что он - "свой". Оказалось, что в заголовке .ZIP обнулён 6-ой байт (6-ой от начала файла). Так вот - если туда записать 0x08, то такой .ZIP архив, переименованный в .SDT будет видеться семёном без всяких проблем как "родной"! Справка: два байта (WORD) по смещению 0000000006 отвечают за минимальную версию ZIP необходимую для распаковки архива. Таким образом заголовок нормального .ZIP файла выглядит так: 50 4B 03 04 14 00 00 00 а "исправленного" .SDT-архива должен выглядеть так: 50 4B 03 04 14 00 08 00 Надеюсь, то что я написал, кому-нибудь поможет и сбережёт нервные клетки, время и деньги. Вот, собственно, код небольшой консольной программки, которая делает все соответствующие исправления: CODE Program sdtfix; {$APPTYPE CONSOLE} Var Fl: File; Cr: Cardinal; Begin If ParamCount<>1 Then Exit; AssignFile(Fl, ParamStr(1)); Reset(Fl, 1); BlockRead(Fl, Cr, 4); If Cr = $04034B50 Then { 'PK\03\04' } Begin Cr:=$00080014; BlockWrite(Fl, Cr, 4); End; CloseFile(Fl); End. |
-=CHE@TER=- Тему переименовал.
NO... kia-a-a-a!
С большим... Jul 7 2008, 17:15
xkL0#J Nokia не понимающая MP3???? старушка 6230 и та с э... Jul 8 2008, 05:51
-=CHE@TER=- Купил новый телефон - Samsung S5610.
Характеристик... Sep 13 2013, 17:16
-=CHE@TER=- Microsoft - КОРПОРАЦИЯ ЗЛА!
Знакомому подарили... Sep 14 2014, 17:21
Siberian GRemlin Знакомому подарили смартфон с Windows 8 (Nokia Lum... Sep 15 2014, 07:08

-=CHE@TER=- Кто-то его сильно не любит. :lol:Ты будешь смеятьс... Sep 16 2014, 11:41
Raf-9600 Погуглил - чтобы добавить музыку в коллекцию рингт... Oct 9 2014, 15:05
-=CHE@TER=- Актуально только для WP7, в WP8 это исправили.
... Oct 10 2014, 18:36
Raf-9600 Потому что это не сотовый телефон, которые покупаю... Oct 11 2014, 13:43
-=CHE@TER=- Пришёл знакомый человек, озадаченно разглядывая св... Jan 4 2015, 20:40
-=CHE@TER=- Пришёл знакомый человек, озадаченно разглядывая св... Jun 1 2015, 13:16
RAYN3
Пришёл знакомый человек, озадаченно разглядывая с... Feb 3 2016, 21:35
-=CHE@TER=- К сожалению это не охренеть.
Попробую обьяснить от... Feb 4 2016, 18:26
RAYN3
Вообще, интересно было почитать твои сообщения пр... Feb 4 2016, 20:40
Siberian GRemlin В моём телефоне календарь по 31.12.2079. Nokia Xpr... Feb 19 2016, 07:08
-=CHE@TER=- У Samsung S5610 есть одна ОЧЕНЬ серьёзная проблема... Jul 31 2016, 15:51![]() ![]() |
| Упрощённая версия | Сейчас: 8th December 2025 - 17:39 |