Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MBR 
:(
    Опции темы
Delphist
  Дата 11.3.2004, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: нет
Всего: 3



Как с помощью ассемблера получит доступ к из любой файловой системы - скажем NTFS, с любого логического диска - cкажем диска D получить доступ к 1 сектору 0 дорожки 0 головки жестокго диска, я подчеркиваю именно к 1 сектору 0 дорожки 0 головки жесткого диска, а не логического диска на котором находится код программы который читает 1 сектор 0 дорожку 0 головку.


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
p0s0l
Дата 11.3.2004, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 2
Всего: 112



Если из доса, то было бы проще паренной репы. А под Win - такой вопрос и меня интересует... В 98-ой еще видал способ (в MSDN где-то описан), в 2k/XP - не знаю (тот, что в 98-ой работает, в NT-ях не катит)...



--------------------
С уважением, г-н Посол.
PM   Вверх
p0s0l
Дата 11.3.2004, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 2
Всего: 112



Опа! Попробовал тот же способ, что и для чтения локальных дисков - работает!!! Круть! Все до ужасного ужаса просто оказалось.
Если надо читать логический диск, то делаешь CreateFile для имени:
"\\.\C:"
А если же надо, например, первый физический диск - то:
"\\.\PhysicalDrive0"
Как раз при чтении с нулевой позиции и будет тебе MBR, преобразование CHS в абсолютный № сектора думаю не вызовут проблем...
После CreateFile юзай SetFilePointer и ReadFile/WriteFile...



--------------------
С уважением, г-н Посол.
PM   Вверх
p0s0l
Дата 11.3.2004, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 2
Всего: 112



PS: для CD-ROM-ов вроде имена такие "\\.\Cdrom0"
Про способ для 98-ой: через "\\.\vwin32" можно вызывать прерывания DOS 13h, 25h, 26h...



--------------------
С уважением, г-н Посол.
PM   Вверх
Jin X
Дата 11.3.2004, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 5.3.2004

Репутация: 1
Всего: 1



Файловая система тут ни при чём.
Если пишешь прогу под ДОС, используй ah=2/int 13h, но это будет работать только в ДОСе и в Win9X/ME.
Если пишешь под винду, то... см. тут
--------------------
Бойся своей мечты, ибо она осуществима!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0783 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.