Het schrijven programma om Verdeling te schrappen, om verdelingsingang van verdelingslijst van MBR te schrappen

Data Recovery PRO DATA DOCTOR

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

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


Het schrijven programma om Verdeling te schrappen

Het programma wordt om verdeling te schrappen gebruikt voor het problemen oplossen doel. Bijvoorbeeld, veronderstel dat u de Verdelingen van het fat32- dossiersysteem in uw schijf had. Nu besliste u het werkende systeem LINUX in uw schijf gelijktijdig te installeren.

Als om het even welk hoe, de installatie van werkend systeem ertussen wordt onderbroken, in het stadium toen de wijzigingen aan de verdelingslijst van MBR werden gemaakt. In zulke gevallen zijn er heel wat mogelijkheden dat de verdeling, waarin u het andere werkende systeem ging installeren, ontoegankelijk wordt.

In dit geval wordt de schijfruimte van de verloren verdeling nutteloze toe te schrijven aan ontoegankelijk het zijn. Nochtans als wij de verdelingsinformatie van die verdeling van verdelingslijst om het even welk schrappen hoe, wij dit ruimte bruikbare gebruikende bevel FDISK van Dos kunnen opnieuw maken.

Het programma is om de verdelingsingang van de verdelingslijst van MBR te schrappen gegeven daarna:

/* Programma om de tweede verdelingsingang van de verdelingslijst van MBR te schrappen */

# include <bios.h>

/* structuur om de verdelingsingang van verdelingslijst te lezen */

struct partition
{
/* Active Partition Byte */
unsigned char bootable ;

/* Starting Head */
unsigned char start_side ;

/* combinatie van Beginnend sector en cilinderaantal */

unsigned int start_sec_cyl ;

/* De Byte van de Indicator van het systeem van het dossier */
unsigned char parttype ;

/* Ending Head */
unsigned char end_side ;

/* combinatie van Beginnend sector en cilinderaantal */

unsigned int end_sec_cyl ;

/* Het relatieve Aantal van de Sector */
unsigned long part_beg ;

/* De lengte van de verdeling in sectoren */
unsigned long plen ;
} ;

/* Structuur aan lees-schrijfmbr */
struct part
{

/* IPL (Initial Program Loader) */
unsigned char master_boot[446] ;

/* Partition table */
struct partition pt[4] ;

/* Magic Number */
int lasttwo ;
} ;

struct part p ;

void main()
{
unsigned int t1,t2;
clrscr();
biosdisk ( 2, 0x80, 0, 0, 1, 1, &p ) ;
display(); /* display the information of
Partition table */
getch();

p.pt[1].bootable = 0;
p.pt[1].start_side = 0 ;
p.pt[1].start_sec_cyl = 0 ;
p.pt[1].parttype = 0;
p.pt[1].end_side = 0;
p.pt[1].end_sec_cyl = 0;
p.pt[1].part_beg = 0;
p.pt[1].plen = 0;

printf("\n\n\n After Deleting the Second Partition
Entry From MBR Partition Table,");
printf("\n The Partition Table will Be Changed as
Follows: ");

/* Om de Tweede Informatie van de Verdeling van verdeling te schrappen
de lijst van MBR verwijdert de voorwaartse schuine strepen uit
biosdisk( ) functie. Gebruik niet zorgeloos, verdelen
de informatie van Tweede Verdeling van de Lijst van de Verdeling zal
volledig wordt gewist. */

////// biosdisk ( 3, 0x80, 0, 0, 1, 1, &p ) ;
display(); /* Toon de informatie van verdeling
lijst na wijziging */
getch();

}

Commentaren op programma:

Uncomment the biosdisk ( 3, 0x80, 0, 0, 1, 1, &p ) functie om de tweede verdeling van de verdelingslijst van MBR te schrappen.

Om de verdeling te schrappen, worden alle parameters van het, geplaatst aan 0 in de ingang van de verdelingslijst in MBR. Herinner altijd dat als u de uitgebreide verdeling schrapt, alle logische verdelingen van die uitgebreide verdeling ook ontoegankelijk zullen worden.

De Functie wordt display() gebruikt om de verdelingslijst van MBR te tonen. De codage van de functie is als volgt:

/* Functie aan de lijst van de vertoningsverdeling van MBR */

display()
{
unsigned int s_sec, s_trk, e_sec, e_trk, i, t1, t2 ;
char type[20], boot[5] ;

printf("\n\nPart. Boot Starting location Ending Location Relative Number of");

printf("\nType Side Cylinder Sector Side Cylinder Sector Sectors Sectors\n");

for ( i = 0 ; i <= 3 ; i++ )
{
if ( p.pt[i].bootable == 0x80 )
strcpy ( boot, "Yes" ) ;
else
strcpy ( boot, "No" ) ;

switch ( p.pt[i].parttype )
{
case 0x00 :
strcpy ( type, "Unused" ) ; break ;
case 0x1 :
strcpy ( type, "FAT12" ) ; break ;
case 0x2 :
strcpy ( type, "Xenix" ) ; break ;
case 0x3 :
strcpy ( type, "Xenix:usr" ) ; break ;
case 0x4 :
strcpy ( type, "FAT16<32M" ) ; break ;
case 0x5 :
strcpy ( type, "DOS-Ext." ) ; break ;
case 0x6 :
strcpy ( type, "FAT16>32M" ) ; break ;
case 0x7 :
strcpy ( type, "NTFS" ) ; break ;
case 0x0b :
strcpy ( type, "FAT32" ) ; break ;
case 0x0c :
strcpy ( type, "FAT32-LBA" ) ; break ;
case 0x0d :
strcpy ( type, "VFAT16" ) ; break ;
case 0x0e :
strcpy ( type, "VFAT16-LBA" ) ; break ;
case 0x0f :
strcpy ( type, "FAT EXT" ) ; break ;
case 0x17 :
strcpy ( type, "HPFS" ) ; break ;
case 0x81 :
strcpy ( type, "Old LINUX" ) ; break ;
case 0x82 :
strcpy ( type, "LinuxSwap" ) ; break ;
case 0x83 :
strcpy ( type, "LinuxNative" ) ; break ;
case 0x85 :
strcpy ( type, "Linux Ext." ) ; break ;
default :
strcpy ( type, "Unknown" ) ; break ;
}

s_sec = ( p.pt[i].start_sec_cyl & 0x3f ) ;
t1 = ( p.pt[i].start_sec_cyl & 0xff00 ) >> 8 ;
t2 = ( p.pt[i].start_sec_cyl & 0x00c0 ) << 2 ;
s_trk = t1 | t2 ;

e_sec = ( p.pt[i].end_sec_cyl & 0x3f ) ;
t1 = ( p.pt[i].end_sec_cyl & 0xff00 ) >> 8 ;
t2 = ( p.pt[i].end_sec_cyl & 0x00c0 ) << 2 ;
e_trk = t1 | t2 ;

printf ( "\n%6s %3s", type, boot ) ;
printf ( "%4d %6d %8d", p.pt[i].start_side,
s_trk,s_sec ) ;
printf ( "%7d %6u %8u", p.pt[i].end_side, e_trk,
e_sec ) ;
printf ( " %10lu %10lu", p.pt[i].part_beg,
p.pt[i].plen ) ;

}

return 0;
}

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

Next page

© Copyright 2002-2005 DataDoctor.Biz

Home | Contact us | Downloads | Services | Resources | 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