Все кто так или иначе когда-либо работал с устройствами на базе Qualcomm - наверняка знакомы с утилитой Qualcomm Product Support Tools (или QPST, как ее принято называть сокращенно). Но мало кто знает, что есть и кросплатформенные Open Source аналоги, об одном из которых я и хочу сегодня вктратце рассказать. Речь пойдет об OpenPST от ghassani, исходный код которого вы можете найти на GitHub'е по приведенной выше ссылке. С основными возможностями утилиты, а вернее набора утилит вы можете ознакомиться там же. Если вкратце, что OpenPST позволяет делать с устройствами на платформе Qualcomm в принципе все то же самое что и QPST (а местами и чуть больше), но при этом проект кросплатформенный, т.е. его можно собрать как под Linux, так и под Win32 и плюс ко всему open-source'ный.
Ну а теперь вкратце о возможностях (или о частях, т.к. фактически каждую возможность реализует отдельная утилита из состава проекта):
Ну а теперь вкратце о возможностях (или о частях, т.к. фактически каждую возможность реализует отдельная утилита из состава проекта):
- Sahara Protocol - работа с устройством по протоколу Sahara, также известному по USB Product ID 9006 и 9008.
- Streaming DLOAD Protocol - работа в режиме DLOAD, прошивка.
- QCDM - работа с NVitems и EFS.
- MBN Inspection - работа с разделами подписанными цифровой подписью.
Вообщем-то мне стало интересно "как это работает" и насколько функционал OpenPST повторяет или превосходит QPST, поэтому я решил заручиться терпением и собрать релизную версию OpenPST с использованием QT 5.5 и VS 2013 (спасибо за ценные советы и комментарии Ocean'а при сборке, процесс больше напоминал "давно я не брал в руки шашек", но после нескольких очень точно данных комментариев и подсказок все успешно собралось). На процесс разбирательств с различными версиями Qt и процесса сборки приложений с использованием Qt под VS2013 у меня ушло несколько часов (за это время я успел освежить свои знания касательно различных флагов, а-ля /MT, /MTd и /MD, /MDd, а также вспомнить и узнать многое другое), еще час-полтора ушли на то чтобы понять почему Debug конфигурация собирается успешно, а Release не хочет ни в какую ... ну и еще минут 15 на то, чтобы понять как запустить полученное собранное приложение на другой машине "без плясок с бубном", что в случае Qt не очень очевидно :) Так или иначе у меня получился полностью собранный проект. Скриншоты приложений вы можете посмотреть ниже:
Ну а собранные бинарники под Win32 можно взять здесь - openpst-release-03.7z ...
comment 0 التعليقات:
more_vertsentiment_satisfied Emoticon