2015-03-28 4 views
0

Я пытаюсь прочитать загрузочный сектор с диска FAT32 на устройстве Android, но я получаю совершенно разные данные от ожидаемого.Невозможно правильно прочитать загрузочный сектор с USB-накопителя FAT32 на устройстве Android

Это результат, который я получаю с помощью bulkTransfer на конечной точке чтения на своем устройстве Android.

33C08ED0BC007C8EC08ED8BE007CBF00 
06B90002FCF3A450681C06CBFBB90400 
BDBE07807E00007C0B0F850E0183C510 
... 
656D000000637B9A5BE2B3D70000800F 
30000BFEFFF4E0030000205CF8000000 
00000000000000000000000000000000 
00000000000000000000000000000000 
000000000000000000000000000055AA 

Это загрузочный сектор с шестнадцатеричным просмотром на моем компьютере.

EB58904D53444F53352E300002081004 
0200000000F800003F00FF00E0030000 
205CF800F83D00000000000002000000 
... 
0000000000000000000000000D0A5573 
75E4206479736B69206C756220696E6E 
79206E6F986E696BFF0D0A4288A56420 
6479736B75FF0D0A5A72657374617274 
756A2C206E616369736B616AA563206B 
6C617769737A0D0A00ACC9D6000055AA 

Данные, которые я получил на Android содержит следующее сообщение ближе к концу: «Invalid Partition table.Error загрузки операционной system.Missing операционной системы».

Может ли кто-нибудь сказать мне, что здесь не так? Есть ли какое-либо действие, которое я должен выполнить перед чтением загрузочного сектора?

В настоящее время мой код потока следующим образом:

  1. Найти нужное устройство
  2. USB Получить разрешение на связь с USB-устройством
  3. открытое соединение делают устройство
  4. Выполнить «Test Unit Ready "до успешного ответа
  5. Выполнение команды« Чтение емкости »- это возвращает правильные результаты
  6. Выполнение «Read 10» команду прочитать первые 512 байт - это возвращает неверные данные

Я буду благодарен за любые предложения

ответ

0

Какой шестигранной зритель?

Non-админ пользователя на победу не может получить доступ к таблице разделов на физическом устройстве, так что вы обычно первый сектор только раздела. Вы можете проверить это, он будет содержать строку FAT32 со смещением 0x52. Чтобы прочитать таблицу разделов реального, вам необходимо получить доступ к физическому устройству с правами администратора.

На андроиде вы сами читаете таблицу разделов, потому что вы получаете доступ к физическому «диску» на низком уровне.

+0

Зритель называется HxD. Благодаря вашему ответу я понял, что я делаю неправильно. Вместо открытия физического диска в редакторе я открывал раздел. После открытия физического диска я получаю тот же контент, что и в приложении для Android. Ну, это была глупая проблема. Большое спасибо! – glodos

 Смежные вопросы

  • Нет связанных вопросов^_^