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

Files Recovery Software
Home Contactgegevens Customer Support Download Demo Producten  

 
 

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;
}


Previous page

page 1 | 2 | 3 | 4 | 5 | 6

Next page
 
 
Data Recovery boek
 
Hoofdstuk-1 Een Overzicht van de Terugwinning van Gegevens
Hoofdstuk-2 Inleiding van Harde Schijven
Hoofdstuk-3 Logische Benadering van Schijven en OS
Hoofdstuk-4 De Systemen van het aantal
Hoofdstuk-5 Inleiding van de Programmering van C
Hoofdstuk-6 Inleiding aan de Grondbeginselen van de Computer
Hoofdstuk-7 De noodzakelijke Bevelen van Dos
Hoofdstuk-8 Schijf-bios functioneert en onderbreekt Behandeling met C
Hoofdstuk-9 Behandelende Grote Harde Schijven
Hoofdstuk-10 De Terugwinning van gegevens van Bedorven Floppy
Hoofdstuk-11 Het maken van Steunen
Hoofdstuk-12 Het lezen van en het Wijzigen van MBR met Programmering
Hoofdstuk-13 Het lezen van en het Wijzigen van DBR met Programmering
Hoofdstuk-14 Programmering de Terugwinning voor van het "Ruwe Dossier"
Hoofdstuk-15 Programmering voor de Wissers van Gegevens
Hoofdstuk-16 Het ontwikkelen van meer Nut voor Schijven
Bijlage Verklarende woordenlijst van de Termijnen van de Terugwinning van Gegevens
 
 
Pro Data Doctor

Home

Producten

Contactgegevens

Customer Support

Download Demo

Algemene Voorwaarden

 
Pro Data Doctor