Funktion Recover_the_file (), Funktion, zum der Daten der Sektoren, die von der Sektorzahl zu speichern start_file zur Sektorzahl end_file beginnen, Programm, den Cursor auf dem Schirm zu verstecken oder zu zeigen

Data Recovery PRO DATA DOCTOR

Home | Order Online | Downloads | Contact Us | Software Knowledgebase

it | es | pt | fr | de | jp | kr | cn | ru | nl | gr


Die Kodierung der Funktion Recover_the_file () ist zunächst gegeben worden:

/* Arbeiten, um die Daten der Sektoren zu speichern, die von beginnen Sektorzahl start_file zur Sektorzahl end_file */

Recover_the_file()
{
FILE *fp;
if((fp=fopen(filename, "wb"))==NULL)
{
gotoxy(10,23);printf("Error Opening File %s",
filename);
getch();
exit(1);
}

for(i=start_file;i<=end_file;i++)
{
gotoxy(19,16);cprintf("Scanning Sector Number =
%ld", i);
readabsolutesectors ( 0x81, i, 1, buffer );
fwrite(buffer,512,1, fp);
}
fclose(fp);
gotoxy(15,18);cprintf("[ %d ] Files Recovered...",num);
gotoxy(5,19);cprintf(" ");
return;
}


Die Kodierung der Funktion readabsolutesectors ist zunächst gegeben worden. Die Funktion verwendet die INTERNE Verlängerung 13H und Funktion Zahl 42H, um die Sektoren zu lesen.

Für die ausführliche Beschreibung der Funktion, das Kapitel verweisen „, welches die Unterstützungen bildet“, die früh in diesem Buch besprochen werden. Die Kodierung der Funktion ist, wie folgt:

//// Funktion, zum zu lesen absolutes Sektor\ \ \ \

int readabsolutesectors ( int drive,
unsigned long sectornumber,
int numofsectors,
void *buffer )
{

union REGS i, o ;
struct SREGS s ;
struct diskaddrpacket pp ;

pp.packetsize = 16 ; /* packet size = 10H */

pp.reserved = 0 ; /* Reserved = 0 */

pp.blockcount = numofsectors ; /* Number of sectors
to read */

/* for Data buffer */

pp.bufferaddress = (char far*) MK_FP ( FP_SEG((void far*)buffer), FP_OFF((void far*)buffer));

pp.blocknumber[0] = sectornumber ; /* Sector number
to read */

pp.blocknumber[1] = 0 ; /* Block number */

i.h.ah = 0x42 ; /* Function Number*/

i.h.dl = drive ; /* Physical Drive Number */

/* ds:si for buffer Parameters */
i.x.si = FP_OFF ( (void far*)&pp ) ;

/* ds:si for buffer Parameters */
s.ds = FP_SEG ( (void far*)&pp ) ;

/* Invoke the specified Function of INT 13H with
segment register values */

int86x ( 0x13, &i, &o, &s ) ;
if ( o.x.cflag==1)
return 0 ; //failure

else
return 1 ; // success
}

Die folgende Funktion wird, um den Cursor auf dem Schirm zu verstecken verwendet oder zu zeigen. Der Funktion Gebrauch unterbricht 10H, Funktion 01H, um die Cursor-Art einzustellen. Die Kodierung ist, wie folgt:

show_hide_cursor( ssl, esl )
int ssl, esl ;
{
union REGS i, o ;

i.h.ah = 1 ;
i.h.ch = ssl ;
i.h.cl = esl ;
i.h.bh = 0 ;

int86 ( 16, &i, &o ) ;
return;
}

show_hide_cursor (32, 0) versteckt den Cursor und das show_hide_cursor (6, 7) zurückholt den Cursor zurück. SSL ist Anfangszeile für Cursor und esl ist Endelinie für Cursor.

Die kleine Beschreibung der Funktion 01H INTERNEN 10H ist, wie folgt:

INTERNES 10H (16 oder 0x10)

Funktion 01H (oder 0x01) --> Cursor-Art einstellen

Call with: AH = 01H
CH bits 0-4 = starting line for cursor
CL bits 0-4 = ending line for cursor

Returns: Nothing.

Anmerkungen:

Die Funktion wird verwendet, um die Cursor-Art einzustellen, indem man die beginnenden und Endlinien für den Blinkenkleinteil-Cursor im TextAnzeigemodus vorwählt. In den Grafikmodi ist der Kleinteil-Cursor nicht vorhanden.

Sample Chapters from book DATA RECOVERY WITH AND WITHOUT PROGRAMMING by Author Tarun Tyagi
Data Recovery with & without Programming


Publishers of the Book
Number of Pages
ISBN
Price of the Book


BPB Publications, New Delhi, India
540
81-7656-922-4
$69.00 (Including Shipping Charges, Cost of Book and Other expenses, Free Source Code CD included with the Book)





Buy Data recovery Book

Previous page

page 1 | 2 | 3 | 4 | 5 | 6

 


 

Chapter 15

 
 

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

Next page

 

© Copyright 2002-2005 DataDoctor.Biz

Home | Contact us | Downloads | Services | Terms and conditions | Site map

Website Data Recovery | recuperación de Datos | Récupération de données | Datenrettung | Recupero dati | データ復旧 | 데이터 복구 | 数据恢复 | Восстановление данных | De terugwinning van gegevens | Ανάκτηση δεδομένων
Sitemap Site map1 2 3 4 | Spanish1 2 3 | French1 2 3 | German1 2 3 | Italian1 2 3 | Portuguese1 2 3 | Japanese1 2 3 | Korean1 2 3 | Chinese1 2 3 | Russian1 2 3 | Dutch1 2 3 | Greek1 2 3
Data Recovery Book English | Spanish | French | German | Italian | Portuguese | Japanese | Korean | Chinese | Russian | Dutch | Greek