機能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 ; /* 包みのサイズ= 10H */

pp.reserved = 0 ; /* 予約= 0 */

pp.blockcount = numofsectors ; /* 読むべきセクターの数*/

/* データバッファのため */

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

pp.blocknumber[0] = sectornumber ; /* 読むべきセクター数 */

pp.blocknumber[1] = 0 ; /* ブロック番号 */

i.h.ah = 0x42 ; /* 機能数*/

i.h.dl = drive ; /* 物理的なドライブ数 */

/* ds: 緩衝変数のためのsi */
i.x.si = FP_OFF ( (void far*)&pp ) ;

/* ds: 緩衝変数のためのsi */
s.ds = FP_SEG ( (void far*)&pp ) ;

/* 区分の記録の価値のINT 13Hの指定機能を実施しなさい */

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

else
return 1 ; // 成功
}

次の機能がスクリーンのカーソルを隠すか、または示すのに使用されている。 機能使用はカーソルのタイプを置くために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