/* 档案系统识别标志字节 */
if( buffer[0x1C2+active_pos*16]==0x04 ||
buffer[0x1C2+active_pos*16]==0x05 ||
buffer[0x1C2+active_pos*16]==0x06 ||
buffer[0x1C2+active_pos*16]==0x0B ||
buffer[0x1C2+active_pos*16]==0x0C ||
buffer[0x1C2+active_pos*16]==0x0E ||
buffer[0x1C2+active_pos*16]==0x0F ||
buffer[0x1C2+active_pos*16]==0x07)
{
switch(buffer[0x1C2+active_pos*16])
{
/* 为NTFS治 */
case 0x07: report_par[*no_par]='N';
printf("\n 治 -%d = NTFS",
*no_par+1);
break;
/* FAT32的分割 */
case 0x0B:
case 0x0C: report_par[*no_par]='3';
printf("\n 治 -%d = FAT32",
*no_par+1);
break;
/* FAT16的分割 */
case 0x04:
case 0x06:
case 0x0E: report_par[*no_par]='1';
printf("\n 治 -%d = FAT16",
*no_par+1);
break;
} // 转换结束
b_sec=*sec+relative_sec;
sectors_part[*no_par]=no_sectors; /* 一些部门大量储存间隔 */
} //如果年底条件
else
{ /*如果指标不符合治 */
if(*sec==0)
{ no_par=0;
break;
}
if((fat_check!=0x3631)&&(fat_check!=0x3233))
b_sec=*sec=0;
}
if((b_sec!=0)&&(sec!=0))
{
star_sec[*no_par]=b_sec;
(*no_par)++;
}
else
break;
|