Спасибо mackoy19 за интересный "материал для исследования".
Micromax.exe в архиве, есть ничто иное, как "скомпилированный" .bat скрипт.
"Компиляция" выполнена с помощью
Bat_To_Exe_Converter (что выдает наличие ключа командной строки "-b2edecompile"), и состоит во встраивании оригинального .bat файла в тело готового .exe stub-а как есть с последующей, видимо, распаковкой .bat и его исполнением средставми ОС в момент запуска.
Для "декомпиляции" предусмотрен ключ "-b2edecompile", позволяющий "официально" распаковать оригинальный .bat
Желающие могут "развлечься", запустить "
Micromax.exe -b2edecompile", после чего в появившемся диалоге выбрать папку для сохранения оригинального "aloks.bat"
Судя по содержимому меню, скрипт написан индийским программистом
Khandelwal Alok -ом для различных моделей MMX.
Умеет исправлять проблему с зацикливанием в режиме
Factory mode и сбрасывать
FRP двумя методами (второй для конкретной модели).
Сразу следует указать, что для работы скрипта аппарат
ДОЛЖЕН быть в режиме FastBoot
Напомню, что для входа в данный режим следует удерживать кнопку
Vol- при включении (т.е. удерживать
Vol- и нажать
Power на
ВЫКлюченном аппарате).
Первый пункт меню - проверка девайса ограничивается выводом результатов команды
fastboot devices
Пользователь сам должен определить наличие и корректность определения по выводу команды. Скрипт ничего не контролирует.
Второй пункт выполняет
СТИРАНИЕ раздела config через
FastBoot
Без бакапа это делать однозначно опасно, как я писал в предыдущем посте.
Команда
fastboot -i 0x2a96 erase config
Выполняет стирание раздела config для устройств(а) с USB VID 2A96.
Данный Vendor ID характерен лишь для некоторых устройств Micromax, в частности
YU4711
На иных устройствах выполнения команды и каких либо изменений произойти не должно.
Следующая команда "тупо" перезагружает телефон (тоже, только с тем же VID)
fastboot -i 0x2a96 reboot
Зачем нужен этот пункт, являющийся "полным подмножеством" третьего - ума не приложу.
Единственное разумное объяснение - АФФтАр (неразумно) не вникал в суть, а "просто копипастил" команды, посему их "сродства" и не обнаружил.
Третий пункт почти полностью повторяет второй и выполняет
СТИРАНИЕ раздела config через
FastBoot
Разница лишь в том, что делает он это на
ЛЮБОМ, "первом попавшемся на FastBoot-е" устройстве.
Если устройство висит в FastBoot и на устройстве есть раздел с таким именем -
ОН БУДЕТ СТЕРТ.
Без бакапа это делать особенно опасно, как я писал в предыдущем посте.
При использовании скрипта убедитесь в отсутствии иных Android-устройств на других каналах USB.
Команда
fastboot erase config
Выполняет
стирание раздела
config для
первого попавшегося FastBoot устройства.
Следующая команда "тупо" перезагружает телефон.
fastboot reboot
Последний, четвертый пункт меню позволяет исправить проблему, когда телефон "впадает" в Factory Mode (обычно после прошивки) и не хочет из него выходить.
Состоит в запуске команды:
adb shell fctd -b normal
Данная команда приводит к выполнению команды "
fctd -b normal" "внутри телефона".
Метод взят, очевидно из утилиты "Factory mode fix by Pinto", выложенной на ************** в 2015г
В качестве альтернативного метода перевода в Factory mode там предлагается команда shell "fctest system reboot"
Для выполнения необходимых действий, указанная программа (
fctd или
fctest) должна присутствовать где-то на одном из путей поиска запускаемых бинарный программ ("внутри телефона"), например, в /bin, /xbin, /sbin, /system/xbin итп. Очевидно, что это штатные бинарные утилиты производителя, являющиеся частью кастомизации ОС аппарата и присутствующие в прошивке с завода. (Кому интересно, искать их, очевидно, следует на физическом разделе system, т.е. в /system или иных точках монтирования ФС указанного раздела.) На каких аппаратах они нужны и присутствуют не знаю. Как пример, в указанном топике, фигурировал A310.
Для применения метода необходимо, как минимум, чтобы телефон определялся как ADB устройство. (В FastBoot режиме этот финт не сработает, поск shell там не доступен). Если ADB Daemon запущен в рамках подгруженного кастомного Recovery, учитывайте, что необходимые, указанные выше бинарники находятся где-то в папках ОС телефона и никак не в папках Recovery, соотв. для запуска придется их искать и указывать полный путь (может еще и монтировать нужный том, скорее всего system, предварительно, если он сам не смонтируется ядром Recovery автомтически).
Вот скрипт целиком
(GreetZ go to Khandelwal Alok, remember Hero's name!)
Еще раз хочу подчеркнуть -
метод со стиранием раздела config - ОПАСЕН!
Надо быть точно уверенным, что он "ведет к успеху"
именно на данной модели аппарата (еще и с учетом установленной прошивки).
Если нет 100% уверенности -
ЗАБАКАПЬТЕ раздел config
ПЕРЕД "экспериментами" (стиранием). Будут проблемы - прошьете его обратно через FastBoot и вернетесь к исходному положению. Если в аппарате и раздела такого
НЕТ ВОВСЕ, то и метод к нему, ОЧЕВИДНО,
НЕ ПРИМЕНИМ.
В общем случае, если аппарат (на любом SoC/проце) грузится и "отдается" по ADB с root-ом - используйте команду типа "dd if=/dev/block/..... of=/sdcard/....." (Надо еще, бывает, выявить на каком mmcblk?p? "висит" нужный раздел, если не удается его "отыскать" в подпапке типа "by-name", есть разные методы).
Если аппарат не дает ADB или Root-а в нем, найдите кастомный Recovery (CWM/TWRP/Carliv/etc) с включенным "ADB с Root-ом" и слейте общим методом через него.
На аппвратах на Qualcomm, "общий метод", обычно, это единственный (кроме JTAG) способ слить произвольный раздел ("боксы" зачастую делают тоже самое только "автоматически").
На аппаратах с MediaTek, обычно, легко слить раздел или всю флешь (фулл) с помощью всем известного FlashTool-а.
Для слива одного раздела, достаточно правильно определить (обычно читая scatter "глазами") границы его размещения на флеши и размер. Иногда достаточно скаттер слегка поправить чтобы "скрытый" раздел стал доступен в "меню" для прошивки (соотв и для слива, ну или четко обозначились его адресные границы). Функция ReadBack требует от Вас указать только начальный адрес, размер блока и файл, куда сливать.
Инструкций по сливу фулла полно (можете поискать и в "моем творчестве" тут или на 4пда). Там можно почерпнуть необходимые сведения, понять как и что делать в т.ч. с конкретными разделами.
Вспомнил... Весьма подробную инструкцию "с яркими картинками" (не для чайников, но для "простых людей") как сливать FlashTool-ом я писал для MTS Smart Sprint 4G в соотв топике на 4пда. Следует учесть, что для слива, изредка, требуется иметь на руках "правильный" прелоудер (для данного SoC+память), ибо, изредка, ОЕМ-ы лочат возможность слива в штатном, записанном на флеши.
Казалось бы, сейчас есть более простые методы по решению сабжевой задачи, в т.ч. тот, что я чуть выше давал.
но жизнь то идет, все меняется. Другие телефоны могут быть кастомизированы иначе. Их тоже нужно как-то чинить. Иногда нужно приложить усилия и найти собственный метол решения, можно потом еще и с коллегами поделиться. Где искать концы, Вы поймете, потренировавшись "на кроликах". Сегодняшние методы могут перестать работать завтра. Кроме того, любые данные могут быть случайно испорчены человеком или самой системой. Что Вы будете делать если штатный метод не сработал. Клиент смотрит на Вас как на истину в последней инстанции. Если не Вы то кто...?
Успехов!