Функция Скрыть курсоры и показывать на экране

Data Recovery PRO DATA DOCTOR

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

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


/*Функция Скрыть (и показывать) курсор на экране*/

show_hide_cursor ( 32, 0 );

gotoxy(15,18);cprintf("[ %d ] Files Recovered...",
num);

/* search for the data until the ending sector of the disk */

while(loop<Sectors_in_HDD2)
{
/* Read one Sector (Sector No. = loop) */
readabsolutesectors ( 0x81, loop, 1, buffer );

gotoxy(19,16);cprintf("Scanning Sector Number = % ld",
loop);

if(kbhit())
{
show_hide_cursor ( 6, 7 ); /* Retrieve the
cursor before
Exit the program
*/
exit(0);
}

/* if specified header is found */
if((memcmp ( buffer, header,7))==0)
{

/* logic to provide the file name to automatically
create the files to save the recovered data */

strcpy(filename, path);
itoa(num,temp,10);
strcat(filename, temp);
strcat(filename,".DOC");
start_file=loop; /* starting sector of file */

gotoxy(5,19);cprintf("File Found..., Saving As %s",
filename);
num++;

////////////// File Close Conditions \\\\\\\\\\\\\\\\

file_size=0;
while( file_size<5000000)
{

loop++;
file_size+=512;
readabsolutesectors ( 0x81, loop, 1, buffer );

gotoxy(19,16);cprintf("Scanning Sector Number = % ld" ,
loop);

/* if file size reaches up to maximum size of 5MB */
if(file_size>=5000000)
{
end_file=loop; /* Ending Sector of File */
Recover_the_file();/* write the data to file */
break;
}

/* if footer of DOC file is found */
for(i=0;i<512;i++)
{
if( memcmp(buffer+i,DOC_footer,12)==0 )
{
end_file=loop; /* Ending Sector of File */
Recover_the_file();/* write the data to file */
break;
}
}

/* if another header is found */
if( memcmp(buffer,header,7)==0 )
{
loop=loop-1;
end_file=loop; /* Ending Sector of File */
Recover_the_file();/* write the data to file */
break;
}
if(kbhit())
{
show_hide_cursor ( 6, 7 );
exit(0);
}
}

}
loop++;
} ////////While Loop Ends Here

 

/* display message for completion of search and recovery */ if(loop>=Sectors_in_HDD2 )
{
gotoxy(17,23);cprintf("The Saving of files in the Disk is
Completed !!");
gotoxy(17,24);cprintf("Press Any Key to Exit...");
show_hide_cursor ( 6, 7 );
getch();
}

}

Замечания по кодированию :

Структура геометрии используется getdrivegeometry используя функцию INT 13H Удлинение, Номер 0x48 функции для получения различных параметров диска.

Структура diskaddrpacket Диск предназначен для пакетной Адрес формат, который должен использоваться readabsolutesectors функций.

Функция getdrivegeometry (int дисков) - для получения дисков Параметры дисков указанного физического диска количество дисков.

(символьный) peekb (0x0040, 0x0075), позволяет найти ряд жестких диска подключены к компьютеру, хранятся в памяти сегмент представлен 0040H : офсетные 0075H. Если общее число жестких дисков, вложенный менее двух Показать сообщения об ошибке и выход.

Sectors_in_HDD2 = getdrivegeometry (0x81); находит различные параметры второго физического диска (0x81) и возвращает общее число слоев диске.

Если заявление (доступа (пути, 0)! = 0) проверки доступности путь, указанными пользователем. Если директория не существует, назначения создается на срок до одного уровня и в том случае, если указанным путем проверяется условие, если (mkdir (путь)! = 0), является незаконным, появится сообщение об ошибке.

Имена файлов автоматически создаются файлы для спасения возвращаемых данных создаются таким образом, чтобы первые три символа из файлов приведены в ПТТ strcat (путь, "\ \ Ptt"); функцию. Это сделано с тем, чтобы избежать дублирования имен файлов в директории назначения. Поэтому имена файлов найденных файлов указаны в формате "PTTxxxxx.DOC"

Функция show_hide_cursor (32, 0); используется для Скрыть курсор с экрана, где show_hide_cursor (6, 7); загружает курсор на экране.


Функция readabsolutesectors (0x81, петля, 1, буфера); Читать одном секторе второй физический жесткий диск, указанных в секторе номер контура.

Если заголовок файла не обнаружено, start_file = петля; наборы start_file стартового сектора число файлов, подлежащих возмещению. Программы следующим образом три условия указаны рядом, найти закончившейся сектор файла :

  • Если размер файла доходит до максимального размера строницу
  • Если нижний колонтитулы файла DOC найдено
  • Если другой Заголовок найдено


End_file если целое имеет значение прекращения секторе количество файлов по end_file = петля; если любое из условий из трех удовлетворен. Теперь данные из секторов, начиная с сектора номер start_file на номер end_file сектор сохраняется в файле с функцией Recover_the_file ().

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