Unhideへの執筆プログラム仕切り
隠された仕切りがプログラムを隠すプログラムと反対にちょうど働かせるunhideへのプログラム。 このプログラムで私達は隠された仕切りのファイルシステムの表示器バイトの価値から16を(0x10)引く。
次の通りプログラムのコーディング:
/*unhideに前のプログラムによって隠れる仕切りをプログラムしなさい */
#include <bios.h>
#include <stdio.h>
int main(void)
{
struct diskinfo_t dinfo;
int result, tohide;
int i;
static char dbuf[512];/* データバッファ */
clrscr();
dinfo.drive = 0x80; /* 最初ハードディスクのためのドライブ数 */
dinfo.head = 0; /* ディスクヘッド数 */
dinfo.track = 0; /* トラック数 */
dinfo.sector = 1; /* セクター数 */
dinfo.nsectors = 1; /* セクター計算 */
dinfo.buffer = dbuf; /* データバッファ */
result = _bios_disk(_DISK_READ, &dinfo);
if ((result & 0xff00) == 0)
{
printf("The Partition Codes of Four Partition
Entries are, 0x%02x, 0x%02x, 0x%02x And 0x%02x.\n",
dbuf[450] & 0xff, dbuf[466] & 0xff,
dbuf[482] & 0xff, dbuf[498] & 0xff);
textcolor(15);
gotoxy(5,5);
cprintf("Partition Entry in MBR is as follows:");
gotoxy(10,7);cprintf("1. "); showtype(dbuf[450] & 0xff);
gotoxy(10,8);cprintf("2. "); showtype(dbuf[466] & 0xff);
gotoxy(10,9);cprintf("3. "); showtype(dbuf[482] & 0xff);
gotoxy(10,10);cprintf("4. "); showtype(dbuf[498] & 0xff);
/*unhideに仕切りを入れるために使用を得なさい*/
gotoxy(1,15);printf("Enter The partition no., Which to
unhide, Or Press any other key to
Exit... ");
tohide=getche();
switch(tohide)
{
/*仕切りのテーブルのUnhideの最初仕切り*/
case '1':
dbuf[450] = dbuf[450] -16;
result = _bios_disk(_DISK_WRITE, &dinfo);
break;
/* 仕切りのテーブルのUnhide第2仕切り */
case '2':
dbuf[466] = dbuf[466]-16;
result = _bios_disk(_DISK_WRITE, &dinfo);
break;
/* 仕切りのテーブルのUnhideの第3仕切り */
case '3':
dbuf[482] = dbuf[482] -16;
result = _bios_disk(_DISK_WRITE, &dinfo);
break;
/* 仕切りのテーブルのUnhideの第4仕切り */
case '4':
dbuf[498] = dbuf[498]-16;
result = _bios_disk(_DISK_WRITE, &dinfo);
break;
default:
exit(0);
}
if ((result & 0xff00) == 0)
{
printf("\n\nThe New Partition Codes of Four Partition
Entries are, 0x%02x, 0x%02x, 0x%02x And 0x%02x.\n",
dbuf[450] & 0xff, dbuf[466] & 0xff,
dbuf[482] & 0xff, dbuf[498] & 0xff);
getch();
}
else
{
printf("Cannot Change the Byte, status = 0x%02x\n",
result);
getch();
}
}
return 0;
}
プログラムのコメント
仕切り数をunhideに与えている間注意しなさい。 仕切りの数が間違えて間違って入れられれば、その仕切りのファイルシステム情報は変わり、仕切りは得難くなるかもしれない。 仕切りを隠すために前に論議されるプログラムがその仕切りのファイルシステムの表示器バイトを治すのを助けるかもしれないどんなに。
|
page 1 | 2 | 3 | 4 | 5 | 6 |
|
|
|