기능 Recover_the_file (), 스크린에 커서를 숨기거나 보여주기 위하여 end_file 분야 수에 start_file 분야 수에서 출발 분야의 자료를 저장하는 기능, 프로그램

Data Recovery PRO DATA DOCTOR

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

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


기능 Recover_the_file의 코딩은 () 다음 주어졌다:

/* 분야의 자료를에서 출발 저장하는 기능 end_file 분야 수에 start_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;
}


기능 readabsolutesectors의 코딩은 다음 주어졌다. 기능은 INT 13H 연장과 기능 수 42H를 분야를 읽는 이용한다.

기능의 상세한 묘사를 위해, 이 책에서 먼저 토론된 백업"를 만드는 장을 "참조하십시오. 기능의 코딩은 다음과 같이 이다:

//// 절대 분야를 읽는 기능 \\\\

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
}

뒤에 오는 기능은 스크린에 커서를 숨기거나 보여주기 위하여 이용된다. 기능 용도는 커서 유형을 놓기 위하여 10H 의 기능 01H를 중단한다. 코딩은 다음과 같이 이다:

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)는 커서 및 show_hide_cursor (6, 7)를 후에 만회한다 커서를 숨긴다. ssl는 커서를 위한 출발선이고 esl는 커서를 위한 결말 선이다.

INT 10H의 기능 01H의 작은 묘사는 다음과 같이 이다:

INT 10H (16 or 0x10)

기능 01H (또는 0x01) --> 커서 유형을 놓으십시오

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

Returns: Nothing.

코멘트:

기능은 원본 표시 형태에 있는 깜박거린 기계설비 커서를 시작 그리고 결말 선을 선정해서 커서 유형을 놓기 위하여 이용된다. 도표 형태에서는, 기계설비 커서는 유효하지 않다.

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