1 / 1 / 0
Регистрация: 07.12.2014
Сообщений: 119
|
||||||
1 | ||||||
Вывод на экран количества разделов на жестком диске26.12.2016, 16:10. Показов 1480. Ответов 10
Метки нет (Все метки)
Здравствуйте, пытаюсь понять и написать программу для работы жестким диском под DOS. Суть в том что мне нужно вывести на экран сколько у меня разделов на жестком диске, вопрос такой как это сделать? Может кто встречался с данной задачей
Все что я пока смог сделать это считать сектор MBR, чтобы в отладчике увидеть саму таблицу
0
|
26.12.2016, 16:10 | |
Ответы с готовыми решениями:
10
Вывод на экран информации о жестком диске Перераспределение разделов на жёстком диске Создание разделов в жестком диске Максимальное количество разделов на жестком диске |
Эксперт Hardware
|
||||||
26.12.2016, 18:21 | 2 | |||||
C таблицей разделов знаком?
Достаточно проверить байт "BootID" по смещению [ParTable+5]. Он описывает флаг раздела. Если нуль - то нет раздела:
1
|
1 / 1 / 0
Регистрация: 07.12.2014
Сообщений: 119
|
|
26.12.2016, 18:50 [ТС] | 3 |
Спасибоо вам, а еще вопрос а если мне нужно в добавок к этому вывести тип каждого раздела FAT или FAT32 к примеру, то как сделать проверку?
0
|
Эксперт Hardware
|
|
26.12.2016, 19:33 | 4 |
Вот тебе коды типов разделов.
Делай внутри программы структуру с этими данными, и выбирай строку по результату проверки из этой структуры.
0
|
1 / 1 / 0
Регистрация: 07.12.2014
Сообщений: 119
|
||||||
26.12.2016, 23:41 [ТС] | 5 | |||||
А еще вопрос, этот исполняемый файл был с расширением com, я просто для своей среды не могу его у себя запустить т.к у меня все исполняемые файл с расш. exe
Добавлено через 3 часа 7 минут Переписал код под свою среду отладки, после запуска программы у меня выводится строчка part count но не выводится количество разделов Вот код, где я мог ошибиться или что то не заметить?
0
|
Эксперт Hardware
|
||||||
27.12.2016, 06:28 | 6 | |||||
..так нету-же у тебя вывода на экран, поэтому и не выводит.
Видимо ты вообще далёк от ассемблера. INT-29h выводит на экран с регистра(AL). И где счётчик в СХ для "LOOP", и куда указывает(SI)? Короче, попробуй так, и не ленись читать маны:
0
|
1 / 1 / 0
Регистрация: 07.12.2014
Сообщений: 119
|
|
27.12.2016, 10:06 [ТС] | 7 |
Да только учусь на нем работать, большое вам человеческое спасибо
0
|
Эксперт Hardware
|
||||||
27.12.2016, 14:48 | 8 | |||||
Ну если так, то вот тебе вариант "на коленке" со-строковым выводом..
Под TASM переделаешь сам:
1
|
1 / 1 / 0
Регистрация: 07.12.2014
Сообщений: 119
|
||||||
28.12.2016, 22:40 [ТС] | 9 | |||||
Для меня ваш вариант оказался немного трудным и не понятным, поэтому я решил сделать свой, немного попроще
И вопрос такой как мне органировать красивый вывод списка моих партишенов для моего варианта, я никак не могу разобраться с этим? Пробовал через аски коды, но это такое мучение
0
|
183 / 121 / 26
Регистрация: 18.05.2015
Сообщений: 509
|
|
28.12.2016, 23:16 | 10 |
а еще разделов может быть больше чем 4 шт
0
|
Эксперт Hardware
|
|
28.12.2016, 23:38 | 11 |
tahir_, он MBR читает, а там потолок 4. Это расширенных может быть сколь угодно..
Другое дело GPT, где разделов и 128 не предел.
1
|
28.12.2016, 23:38 | |
28.12.2016, 23:38 | |
Помогаю со студенческими работами здесь
11
Не открывается один из разделов на внешнем жестком диске Ошибка при создании разделов на жестком диске HP pavilion g6 sr1312 Создание разделов на жестком диске Почему на жестком диске так много разделов восстановления? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |