///// Die Größe der Akte in den Sektoren errechnen\\\\\
num_sectors = one.entry[i].file_size/512;
if((one.entry[i].file_size%512)>0)
{
num_sectors = num_sectors+1;
}
/* Datenpuffer von 512 Bytes mit 512 Nullzeichen */
for(j=0;j<512;j++)
{
wipe_buf[j] = '\0';
}
///// Beginnen des Sektors der Akte\\\\\
j= one.entry[i].starting_cluster+31;
/* Den Daten Bereich bis die Sektoren des Akte Endes heraus abwischen */
while(j!=(one.entry[i].starting_cluster +
num_sectors+31) )
{
if((abswrite(0x00, 1, j, &wipe_buf))!=0)
{
printf("\n Störung Schreiben auf Scheibe Sektoren");
getch();
exit(0);
}
j++;
}
printf("\n\n File \"%.8s.%.3s\"Gelöscht!!!" ,
one.entry[i].filename,
one.entry[i].extension);
one.entry[i].attribute = 0; /* Das Akte Attribut einstellen bis 0 */
one.entry[i].time = 0; /* Würfel Zeit Informationen abwischen von der Akte */
one.entry[i].date = 0; /* Die Datuminformationen der Akte abwischen */
one.entry[i].starting_cluster = 0; /* Den beginnenden Block bis 0 einstellen*/
one.entry[i].file_size = 0; /* Die Akte Größe bis 0 einstellen */
one.entry[i].filename[0]=0xE5; /* Den gelöschten Akte Status zur Akte geben */
///// Über Informationen in das Wurzelverzeichnis schreiben\\\\\\
result= abswrite(0x00, 1, 19, &one);
if (result != 0)
{
perror("Störung im Lesesektor, betätigen jeden möglichen Schlüssel, um herauszunehmen…");
getch();
exit(1);
}
}
|