Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Badcopy 1.0.0.4 - копирует файлы с поврежденых CD/DVD дисков
Goto page Previous  1, 2, 3
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Hram



Joined: 19 May 2005
Posts: 113
Location: Питер

Post (Separately) Posted: Sun Sep 09, 2007 13:00    Post subject: Reply with quote

скопировано из readme.txt к программе nscopy.exe
Quote:
ОПЦИИ

"Буфер быстрого копирования" - определяет размер блока при быстром
копировании. При включенной опции "Авто" это значение выбирается
автоматически в зависимости от типа носителя, на котором расположен
исходный файл: 1mb при копировании с быстрых носителей (CD, HDD) и
64kb при копировании с медленных носителей (FDD).

"Попыток скопировать плохой сектор" - определяет количество попыток
скопировать плохой сектор на этапе "Копирование плохих секторов".

"Макс. кол-во циклов 'плохого копирования'" - определяет, сколько раз
будет повторен этап "Копирование плохих секторов", при условии наличия
плохих секторов. Если это значение равно 0, количество повторов не
ограничено – попытки продолжаются до тех пор, пока абсолютно все не
прочитается.

Раздел "Таймауты чтения данных" - значения в этом разделе определяют
для каждого этапа, через сколько миллисекунд будет отменена операция
чтения, а считываемый участок файла помечен как плохой. Не увлекайтесь
чрезмерным уменьшением этих значений, так как программа может начать
помечать действительно читающиеся участки файла как плохие.

"Период автосохранения NSC-файла" - определяет в миллисекундах, как
часто в процессе копирования будет автоматически сохраняться NSC-файл.

"Период проверки готовности носителя" – определяет в миллисекундах,
как часто программа будет опрашивать носитель на готовность, в случае
извлечения носителя во время процесса копирования.

Раздел "Настройки цветов карты файла" позволяет вам изменить цвет
соответствующего элемента на карте.


после изменения настроек они сохраняются в файле nscopy.cfg
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 911
Location: Kyiv, Ukraine

Post (Separately) Posted: Sun Sep 09, 2007 16:13    Post subject: Reply with quote

Hram, спасибо, разобрался! non-stop copy - классная прога! Теперь баг: при копировании плагином+nscopy папки с кучей мелких файлов, в т.ч. нулевого размера, nscopy вылетает и тянет за собой плаг с тоталом, либо те дружно виснут.
Back to top
View user's profile Send private message
Hram



Joined: 19 May 2005
Posts: 113
Location: Питер

Post (Separately) Posted: Sun Sep 09, 2007 16:20    Post subject: Reply with quote

To DrShark: спасибо посмотрю, мне автор non-stop copy писал, что есть проблема с файлами нулевого размера, я как-то эту ошибку обходил, но видимо не совсем правильно.
Back to top
View user's profile Send private message
Hram



Joined: 19 May 2005
Posts: 113
Location: Питер

Post (Separately) Posted: Wed Oct 31, 2007 23:13    Post subject: Reply with quote

Я связался с разработчиком программы NSСopy и он любезно предоставил мне описание формата NSC файла, а потому у меня есть предложение может кто возмется написать плагин для просмотра NSC файлов?

Описание от автора:
Quote:
Это все для версии 1.03 и выше.

Вначале файла необходимо пропустить все байты, пока не встретится байт
с кодом 0x1A.
Сразу за ним следует InfoFile_Header, потом InfoFile_Data_v02.

struct InfoFile_Header
{
char_4 sequence;
uint_32 version;
};

sequence - 4 символа "NSCI"
version - про нее потом - ниже

struct InfoFile_Data_v02
{
uint_32 flags;
uint_64 filesize;
uint_32 fileattributes;
uint_64 filetime;
uint_32 sectorsize;
int_32 operation;
uint_64 position;
int_32 blockcount;
};

char_4 - 4 байта.
uint_32 - 32-разрядное целое беззнаковое число.
uint_64 - 64-разрядное целое беззнаковое число.

В основном интересуют следующие поля:
filesize - размер файла в байтах
sectorsize - размер сектора в байтах
blockcount - количество блоков

Далее следует массив из uint_64, размер массива = blockcount.
Каждый элемент массива - размер блока в секторах. Блоки следуют друг
за другом. Блок с четным номером - хороший, с нечетным - плохой.
Т.е.:
arr[0] - хороший
arr[1] - плохой
arr[2] - хороший
и т.д.

Следует обратить внимание, что размер блока именно в _секторах_, т.е.
размер в байтах самого первого хорошего блока = arr[0] * sectorsize

Несколько слов по поводу остальных полей:
flags - пока всегда равен 0
fileattributes - атрибуты файла в том виде, в каком их дает WinAPI
GetFileAttributes()
filetime - время модификации файла, в том виде, в котором его дает
WinAPI GetFileTime() (имеется ввиду lpLastWriteTime)
operation - текущая стадия копирования:
enum Operation
{
OFastCopy = 0,
ODetalize = 1,
ODetalizeMore = 2,
OBadCopy = 3
};
position - номер сектора текущей позиции копирования

Еще несколько слов про version. Версия NSCopy 1.02 и ниже имела другой
формат NSC файла, поэтому в идеале стоит смотреть что храниться в
version. Если его представить как массив из 4-х байт, то их смысл
будет такой:
INFOFILE_VERSION_MINOR
INFOFILE_VERSION_MAJOR
ENGINE_VERSION_MINOR
ENGINE_VERSION_MAJOR

Интересует только INFOFILE_VERSION_MAJOR, т.е. второй байт. Если он не
равен 2, значит формат NSC файла другой и не совместим с этим
форматом. Остальные байты по большому счету не важны.
Back to top
View user's profile Send private message
Моторокер



Joined: 06 May 2005
Posts: 1517
Location: г. Пермь (читается Перьмь)

Post (Separately) Posted: Thu Nov 01, 2007 09:41    Post subject: Reply with quote

Hram wrote:
проблема с файлами нулевого размера, я как-то эту ошибку обходил, но видимо не совсем правильно.

Разве для нулевых и мелких файлов тоже NSCopy вызываешь? Если размер файла меньше размера сектора, можно просто создать такой же. Правда NSC файл не будет создан.

Кстати, можно перехватывать значения процентов в NSCopy и показывать их в Тотале.
_________________
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Back to top
View user's profile Send private message
serov



Joined: 11 Mar 2008
Posts: 1

Post (Separately) Posted: Tue Mar 11, 2008 10:46    Post subject: Reply with quote

Перешел по ссылке badcopy на этот форум.
Я непонял, плагин с форматированых карт памяти не востанавливает информацию как сама программа BadCopy Pro... ?
Если умеет, то подскажите как. Плагин скачал, интегрировал, запустил...

Нарушение п.5 Правил
Сообщение отредактировано.
Моторокер
Back to top
View user's profile Send private message
Моторокер



Joined: 06 May 2005
Posts: 1517
Location: г. Пермь (читается Перьмь)

Post (Separately) Posted: Wed Mar 12, 2008 11:22    Post subject: Reply with quote

Плагин не восстанавливает удалённые файлы, а только копирует существующие с повреждённых носителей. Например есть царапина на CD/DVD. Копирует, только если файл виден, но не копируется стандартными средствами (Проводник, Тотал).
_________________
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3
Page 3 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group