Имеется программа под Windows Mobile 5.0, состоящая из одного exe и двух dll. Необходимо, в конечном счете, найти необходимую функцию (есть подозрение, что она находится в одной из этих dll) и использовать ее в своей программе (т.е. подключать dll и вызывать из нее функцию).ТребуетсЯ найти имя функции, ее параметры и их тип.Отладчиков под Windows Mobile я не знаю, кроме того, который есть в Visual Studio 2005 и используетсЯ длЯ отладки собственных программ. Пробовал потрошить файлы идой, ясности это не внесло. Прошу совета, с чего начать, что-то вроде плана. В реверсинге программ я не силен, да еще и под наладонники.
Stariy Я тут потрошил Navitel под ARM-архитектуру - IDA нормально помогла. А что у тебя за устройство, какой процессор стоит? И что за программу ты исследуешь?
Ида дизассемблирует, но отлаживаться не получается, говорит - отказано в доступе. Мож че настроено криво в самом аппарате? Обычные коммуникаторы под Windows Mobile 5.0, например MitacMio A700, процессор там ARM. Risco Audio Recorder. А конкретно, мне нужна их нее фонкция перекодирования mp3 в wav. Все опенсорсное, что мне попадалось, работает непозволительно долго, десятки минут. А эта прога обрабатывает средних размеров mp3 за 1-3 минуты, что очень даже подходит.
Подружил IDA и свой КПК, теперь можно отлаживаться. Какие следующие шаги? Подскажите, как можно выяснить, какая функция запускается при выборе какого-то пункта меню? Надо хоть приблизительно найти, куда бряк ставить. Кстати, во время собственно конвертирования нельзя нажать паузу в отладчике, ида говорит - failed. Что это может означать? Не является ли это подтверждением того факта, что в этот момент работает функция не из ехе, а из dll, потому то ИДА и не может остановить ее? Прошу быть снисходительными, если вопросы покажутся глупыми и ламерскими - это мой первый опыт... Обнаружил вот такой вот лог: Код (Text): ....... .... Debugger: Thread started: id=E28B8C56, entry=00048108. Debugger: Thread started: id=A2E145BA, entry=00048C2C. Debugger: Thread started: id=628B8B7E, entry=00048B64. Debugger: Thread started: id=628B881E, entry=0001E6A4. Command "ProcessPause" failed Command "ProcessPause" failed Debugger: Thread terminated: id=628B881E (exit code = 0x0). строчка "Thread started: id=628B881E, entry=0001E6A4." появляется сразу после окончания конвертирования.