Uns diese Informationen versuchen lassen, um die Daten jeder möglicher Akte, die in 1.44Mb, Diskette des 3 ½ Zoll abzuwischen, mit Hilfe der Wurzelverzeichnisinformationen gespeichert wird. Annehmen, daß die Daten in der Diskette nicht zersplittert werden, das Programm folgendem Abwischen die Daten der spezifizierten Akte von seinem Datenbereich gegeben:
/*Programm, zum des Datenbereichs der spezifizierten Akte in der Diskette abzuwischen*/
#include<stdio.h>
#include<dos.h>
///// Struktur, zum von 32 Bytes der Akte Eintragung im Wurzelverzeichnis zu lesen\\\\\
struct root
{
unsigned char filename[8]; /* Dateiname-Eintragung von 8 Bytes */
unsigned char extension[3]; /* Verlängerung der Akte von 3 Bytes */
unsigned char attribute; /* Akte Attribut-Byte */
unsigned char reserved[10]; /* Reservierte Bytes 10*/
unsigned int time; /* Zeit, 2 Bytes */
unsigned int date; /* Datum, 2 Bytes*/
unsigned int starting_cluster;/* Beginnen des Blockes der Akte, 2 Bytes */
unsigned long file_size; /* Akte Größe in den Bytes, 4 Bytes */
};
/*Sollte dieses genommen werden, zum aller Wurzelverzeichnis-Eintragungen zu lesen */
//struct Wurzeleintragung [224];
/* Struktur, zum aller 16 Akte Eintragungen in einem Sektor Wurzelverzeichnis zu lesen*/
struct one_root_sector
{
struct root entry[16];
};
struct one_root_sector one;
void main()
{
int result, i, num_sectors,j;
char wipe_buf[512]; /*Daten dämpfen ab verwendet zu werden, um den Daten Bereich der Akte heraus abzuwischen*/
clrscr();
result= absread(0x00, 1, 19, &one); /* Absoluten Sektor 19 lesen (erster Sektor des Wurzelverzeichnisses)*/
if (result != 0)
{
perror("Störung im Lesesektor, betätigen jeden möglichen Schlüssel, um herauszunehmen..");
getch();
exit(1);
}
|