Συγκόλληση της εικόνας μποτών από το αρχείο στον πρώτο τομέα της δυσανάγνωστης δισκέτας
Για τη συγκόλληση της εικόνας μποτών από το αρχείο στον πρώτο τομέα της δυσανάγνωστης δισκέτας πρέπει να εκτελέσουμε τους ακόλουθους τρεις κύριους στόχους στο πρόγραμμά μας:
- Διαβάστε τις ακριβείς πληροφορίες 512 ψηφιολέξεων του αρχείου μποτών της φρέσκιας δισκέτας από το προηγουμένως σωζόμενο αρχείο.
- Γράψτε αυτές τις πληροφορίες στον πρώτο τομέα της δισκέτας που είναι αυτήν την περίοδο δυσανάγνωστη.
- Ο έλεγχος για την επιτυχή ολοκλήρωση γράφει τη λειτουργία (την σημαντικότερη).
Δεδομένου ότι ο τομέας της δισκέτας είναι 512 ψηφιολέξεις και είναι απαραίτητο να κολληθεί η ακριβής εικόνα μποτών στον τομέα. Είναι σημαντικότερο και απαραίτητο βήμα σε περίπτωση οποιουδήποτε τύπου διαδικασιών που εφαρμόζονται στη δισκέτα στον έλεγχο εάν η λειτουργία ήταν επιτυχής ή όχι.
Μπορεί να υπάρξει οποιοδήποτε πρόβλημα έναρξης με τη δισκέτα κατά τη διάρκεια της λειτουργίας επομένως πρέπει να μονογράψετε το δίσκο με την επαναρύθμιση της system(using λειτουργίας 00H δίσκων του INT 13H).
Εάν ακόμα και μετά από την έναρξη η πρόσφατα δισκέτα ή η αλλαγμένη δισκέτα προκαλεί οποιοδήποτε λάθος ανάγνωσης ενθαρρύνεστε για να τρέξετε το πρόγραμμα πάλι, πιθανότατα μπορεί να λειτουργήσει αυτή τη φορά.
Το ακόλουθο πρόγραμμα πρόκειται να εκτελέσει αυτούς τους διευκρινισμένους στόχους. Δείτε πώς προχωρά:
/* Εικόνα μποτών φορτίων στη δυσανάγνωστη δισκέτα */
#include <bios.h>
#include <stdio.h>
int main(void)
{
struct diskinfo_t dinfo;
union REGS regs;
int result;
int count=0, i;
char fname[80];
char dbuf[512];
FILE *fp;
clrscr();
gotoxy(5,3);cprintf("Εισάγετε το όνομα αρχείων και την πορεία, στα οποία η εικόνα μποτών της δισκέτας αποθηκεύεται");
gotoxy(5,5);
gets(fname);
fp=fopen(fname,"rb");
if((fp=fopen(fname,"rb"))==NULL)
{
highvideo();
gotoxy(10,10);cprintf("Το αρχείο δεν θα μπορούσε να ανοίξουν");
getch();
exit(0);
}
gotoxy(10,9);
cprintf("Προσπάθεια να ανακτηθεί η κίνηση δισκετών:\n");
|