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

Files Recovery Software
연락처 세부 정보 고객 지원 다운로드 데모 제품  

 
 

기능 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.

코멘트:

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


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

 

 
 
데이터 복구 도서
 
장-1 자료 회복의 개관
장-2 하드 디스크의 소개
장-3 디스크와 OS에 논리적인 접근
장-4 수 체계
장-5 C 프로그램의 소개
장-6 컴퓨터 기초에 소개
장-7 필요한 DOS는 명령한다
장-8 디스크 BIOS는 작용하고 C로 취급을 중단한다
장-9 큰 하드 디스크 취급
장-10 타락된 플로피에서 자료 회복
장-11 백업을 만들기
장-12 프로그램을 가진 읽고는 및 변경 MBR
장-13 프로그램을 가진 읽고는 및 변경 DBR
장-14 "익지않는 파일" 회복을 위해 프로그램
장-15 자료 와이퍼를 위해 프로그램
장-16 디스크를 위한 공용품 더 개발
부록 자료 회복 기간의 용어집
 
 
Pro Data Doctor

제품

연락처 세부 정보

고객 지원

다운로드 데모

이용 약관

 
Pro Data Doctor