Verify_the_sector() функции проверяет участок, котор будет читать _ bios_disk()

Files Recovery Software
Дом Контактная информация Служба поддержки Скачать демо - Продукция  

 
 

Комментарии на кодирвоании:

Integrate() функции будет фактический модуль выполнять спасение архива определенного потребителем, в этой программе спасения.

Имя архива с курсом назначения для того чтобы хранить взятый архив хранится в указателе характера * Filename_with_path. Если будет любая ошибка в раскрывать архив назначения, то сообщение ошибки показано и потребитель проворен снова для того чтобы войти назначение.

Bios_disk(_DISK_READ, &dinfo функции _); читает данные архива от места для данных участка диска участком, определенного dinfo структуры и, котор сохраненного в buf буфера данных. Эти данные 512 байт написаны к архиву назначения. Это повторено до тех пор пока вполне архив не интегрировать.

Status=verify_the_sector(cylinder функции, головка, sector); проверяет участок, котор нужно прочитать. Если состояние = 10, оно представляет плохой участок (0xA). Кодирвоание функции давалось ниже:

/// Проверьте участок. (никакие данные не возвращены здесь)\\\

int verify_the_sector(unsigned int c,unsigned int h,unsigned int s)
{
int status;
char *buf;
union REGS in, out;
struct SREGS sg;

in.h.ah = 0x04; /*Номер Функции*/
in.h.al = 1; /* Количество участков, котор нужно подтвердить*/
in.h.dl = 0x00; /*Номер привода для а: */
in.h.ch = c; /* Номер Цилиндра */
in.h.dh = h; /* Главный номер*/
in.h.cl = s; /*Номер Участка*/
in.x.bx = FP_OFF(buf);/* Смещение */
sg.es = FP_SEG(buf); /* Этап */

int86x(0x13,&in,&out,&sg); /* Вызовите функцию 4H ВНУТРЕННЕ 13H */

if(out.x.cflag)
{
status=out.h.ah;
}
return(status);
}

Комментарии на кодирвоании:

Verify_the_sector() функции, проверяет участок, котор будет читать _ функция bios_disk() и возвращает состояние деятельности. Функция использует ВНУТРЕННЕ 13H и функцию 4H для проверки участка.

* buf будет буфер данных, 0x04 будет номер функции определенный in.h.ah = 0x04; и in.h.al = 1; инструктирует для проверки одного участка на времени in.h.dl = 0x00; использует для номера привода для неповоротливого привода а:, c,h, и с будут номера цилиндра, головки и участка.

Функция int86x() использована для того чтобы invoke ВНУТРЕННЕ 13H (функция 4H) с значениями регистра этапа. Состояние деятельности возвращено состоянием интежера.

 

Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18


page 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33

Next page
 
 
Для восстановления данных книги
 
Глава 1 Обзор восстановления данных
Глава 2 Введение жестких дисков
Глава 3 Логический подход к дисков и ОС
Глава 4 Количество систем
Глава 5 Введение в программирование
Глава 6 Введение в информатику
Глава 7 Необходимые команды DOS
Глава 8 Диск - функции BIOS и прерывания контакта с C
Глава 9 Обработка больших жестких дисков
Глава 10 Восстановление данных с поврежденных дискет
Глава 11 Создание резервных копий
Глава 12 Чтение и изменение MBR с Programming
Глава 13 Чтение и Изменение DBR со Программирование
Глава 14 Программирование на "Сырье Файл" подъема
Глава 15 Программирование на данные Стеклоочистители
Глава 16 Разработка более Утилиты для дисков
Добавление Глоссарий терминов по восстановлению данных
 
 
Pro Data Doctor

Дом

Продукция

Контактная информация

Служба поддержки

Скачать демо -

Положения и условия

 
Pro Data Doctor