Комментарии на кодирвоании программы:
В кодирвоании программы, каждый шаг таким же как в ранее программе за исключением буфера dbuf2[512 данных ], который мы используем отрегулировать ошибка произвела плохим участком во время деятельности чтения диска и поддерживать размер архива изображения.
Путем делать это, мы заполняем космос информации, которую мы не сумели прочитать от плохого участка и теперь мы пишем псевдо информацию 512 байт так, что мы будем мочь поддерживать точность изображения диска.
Наклеите данные от архива к физической поверхности свежего флапи-диска:
В этом шаге, мы наклеиваем данные, котор хранят в архиве ранее программой, к физической поверхности свежего флапи-диска, участку участком in the same way мы скопировали его к архиву.
Программа продолжает с following главным образом шагами:
- Раскройте архив в мы хранили поверхностные данные нечитабельного флапи-диска временно.
- Выступите система с иничиативой диска правильн функцией 00H ВНУТРЕННЕ 13H.
- Напишите информацию на участках свежего флапи-диска от архива.
- Покажите состояние писания одновременно к находке или избегите возникновения ошибок.
Кодий источника программы давалось ниже. Препятствуйте нам рассмотреть как оно работает:
/*Программа для писания данных на участках поверхности свежего флапи-диска от архива, созданной ранее программой */
#include <bios.h>
#include <stdio.h>
void main(void)
{
int head,track;
union REGS regs;
int result,i,sector;
int count =0;
char filename[80];
struct diskinfo_t dinfo;
static char dbuf[512];
FILE *fp;
clrscr();
printf("\nВпишите имя архива с курсом для того чтобы хранить данные временно\n");
gets(filename);
if((fp=fopen(filename,"rb"))==NULL)
{
printf("Не был в состоянии создать архив, не отожмите никакой ключа для того чтобы ВЫЙТИ");
getch();
exit(1);
}
|