DocTheEbook: BookLibrary/Install ...
Поиск:
Наблюдать | Версия для печати | Вход:   Пароль:  

Часть. Инсталяция и описании конфигурационных файлов


Программа BOOK_Libray рапространяется вместе с уже закачанной в нее информацией по прошедшим о файл-эхе BOOK книгам (базой). Периодически по этой же файл-эхе пролетают (будут пролетать) дополнения для доподгрузки базы (хотя теоретически программ файлы знакомых авторов или «знакомых жанров» сможет разгребать самостоятельно – без подсказок из вне).


После распаковки WinRAR-архива в корень диска (со всеми подкаталогами) в каталоге BOOK_LIB должны появиться:
Book_Lib.exe – собственно программа;
Book_Lib.ini, Book_TMP.ini, BookHTTP.ini, Ganr_BBS.ini, Welcome.ini – конфигурационные файлы;
BOOK0001.BMP, BOOK0002.BMP и r-error.bmp;
Подкаталог BASE – с базой коллекции;
Возможно файлы TXT и DOC – с описанием системы.


Перед первым запуском необходимо настроить конфигурационные файлы:


Book_ Lib.ini – основной настроечный файл, в нем прописаны:
диск, на котором располагается коллекция файлов (переменная Disk),
основной каталог коллекции (переменная FilesBOOK), название файла с комментариями, которые будут вставлены в начало генерируемого листинга всех книг (переменная Welcome),
путь к фидошному каталогу, где накапливаются файлы, приходящие по файл-эхам (откуда брать новые файлы для сортировки – переменная FilesBBS).


Book_ TMP.ini – вспомогательный настроечный файл. В нем прописаны:
каталог для обработки новых файлов, где будет проходить собственно сама сортировка (FilesTMP) (у переменной FilesTMP есть один глюк, с которым пока не знаю – как справится: путь, прописанный в этой переменной нельзя начинать со слова BOOK, то есть
FilesTMP D:\BOOK_LIB\TMPBOOK\ – приведет к сбоям в работе программы, аналогичный эффект даст
FilesTMP D:\BOOKTMP\
С чем это связано – увы, пока не разобрался (хотя само слово BOOK активно используется при сортировке, но непосредственно FilesTMP вроде бы там никаким боком не задействована, и тем не менее...
Каталог для распаковки архивов (переменная FilesArc);
Каталог для переноса дублей (переменная FilesDupe);
Каталог для копирования найденных файлов (переменная FilesCopy).


BookHTTP.INI – вспомогательный настроечный файл Интернет-библиотек, он нужен только в том случае, если программ Book_Library будет использоваться для скачивания новых, не имеющихся в коллекции, файлов из 10 заранее настроенных сайтов. Впрочем, этот блок в целом – еще в работе и в распространяемой версии (кажется) пока отключен.


Ganr_BBS.ini – этот файл определяет названия жанровых каталогов и комментарий к ним для листинга всех файлов. Поскольку жанровый классификатор частично встроен в саму программу – менять имеющиеся в нем настройки – не желательно.


Структура самой базы:
Catalog.DAT – основная база коллекции с описанием всех архивов книг (k01-k0f – ключи для нее);
Auth.DAT – база авторов;
Cicle.DAT – база циклов;
Class1.DAT – классификаторы жанров 1 уровня;
Class2.DAT – классификаторы жанров 2 уровня;
Class3.DAT – классификаторы жанров 3 уровня;
ClassG.DAT – соответствие жанров и кодов в описаниях (FILES.BBS)
USER.DAT – база пометок читателя.


Alexandr Tovchigrechko 2:5020/113.71 писал(а):
2) Hе подскажешь в какой базе ты деpжишь subj ( \base\*.dat )? Я думал в Clarion, но Clarion_2.01_DOS их не опознал. Я пpосто хотел, в случае, необходимости, экспоpтиpовать их в access или sqlite.


Программ написана на Delphi-6, а база – своя собственная. В начале 90-тых, когда еще не было ни Кларионов, ни foxBASE, ни Paradox-ов, а базы данных были необходимы по работе, я разработал свою собственную структуру подобных баз и утилиты для работы с ними (чтение/запись любой строки прямым доступом, сортировка, поиск, пересохранение и пр.). Первоначально на Фортране и Бейсике (в те времена других языков просто не существовало), потом перевел основные процедуры и функции на Паскаль, сейчас – на Дельфи. Поэтому – аналогов среди других не найти. А мне проще было воспользоваться старыми и проверенными наработками, вместо траты времени на изучение появившихся к этому моменту языков управления базами.
Кроме того, возможности всех существующих баз ограничены небольшим набором типов данных, которые там можно хранить (целые числа, реальные числа, буквы и строки), в то время как моя система позволяет управлять любыми типами, которые только можно придумать (а Дельфи, как и Паскаль, позволяет придумывать любые типы данных, которые могут понадобиться для упрощения работы программы).

Все базы используют способ взаимных ссылок друг на друга, причем номер записи соотвествует порядковому номеру этой строки в самом файле (для ускорения обращения к записью). Поэтому произвольная замена, удаление или вставка строк в любом DAT-файле иным, чем Book_Library инструментом – может превести порче всей базы в целом.

Часть. Организация файлов электронной библиотеки


Структура «хранилища» книг перешла в наследство от поисково-справочной системы Nebula (Clarion 2.01 for DOS) и заключается в следующем:
Чтобы не хранить файлы в разных местах – есть общий каталог всей коллекции книг в целом в данном случае он называется BOOK, название непринципиально, его можно назвать как угодно (BIBLIO, BOOKTECA или еще как-то), но тогда следует поправить настроечные INI-файлы.
Внутри BOOK располагаются жанровые или тематические подкаталоги, в данном случае:


BOEVIK.102 – Боевики, вестерны, приключения, пираты, диверсии
DETEKTIV.101- Детективы
DIAFILM.904 – Диафильмы
ENCIKL.4 – Словари, учебники, справочники, (кроме радиотехн. и электроники)
FANTASY.105 – Отечественные фэнзины, фэнтези, ужастики, сказки (русск.)
FANTASY.106 – Заруб. фэнзины, фэнтези, ужастики, сказки (переводные)
GURNAL.5 – Статьи и рассказы из журналов
HUD-LIT.107 – Отеч.художеств.лит. (кроме фант., любовн.романов и детективов)
HUD-LIT.108 – Заруб.художеств.лит. (кроме фант., любовн.романов и детективов)
KRITIKA.7 – Критика, интервью, полемика
KULINAR.605 – Кулинария, рецепты, пособия
LOVE.109 – Любовные, любовно-исторические романы
MEDIC.604 – Книги по медицине
NF.103 – Фантастика сов. и русскояз. авт.
NF.104 – Зарубежная фантастика
OBEC.110 – Сететевые и начинающие писатели
POPULAR.6 – Hаучная и научно-популярная литература (кроме медицины и радиоэлектроники)
RADIO.602 – Электроника: учебники, справочники, пособия
RELIG.3 – Философия, психология, религия, мистика, культы, неопозн.явления
RUKOVOD.606 – Пособия самодельщикам: авто, мебель, дача, мех.устройства
STIHI.2 – Стихи, песни, поэмы
UMOR.111 – Юмор
VNEGANR.8 – Прочее (политика, история, бизнес, досуг и прочее)


Цифры в конце названия каталогов помогают программе определить их жанровую принадлежность (они «увязаны» с принятым в ФИДО классификатором жанров для книжных файл-эх).
Поэтому новый тематический каталог можно заводить с любым именем, но расширение – следует определить по списку принятых жанров (Приложение 1).


Внутри жанровых расположены авторские каталоги, например,
Содержимое папки D:\BOOK\DETEKTIV.101
AKUNIN – Борис Акунин
ALESHINA – Светлана Алешина
ARNO – Макс Арно
BEREZIN – Михаил Березин
И т.д.
Кроме авторских есть и общие каталоги для файлов-одиночек:
BOOK или BOOK.ALL (BOOK.B-A, BOOK.ELK, BOOK.SHM, BOOK.SPR…)
Если у некоего автора всего 1 текст – нет смысла заводить для него отдельный каталог, такие тексты и собираются в обще-жанровый BOOK с любым расширением (хотя тут расширение тоже имеет некоторый смысл – ALL – все подряд, B-A – без автора, TLS – сказки, CNN – сериал про Конана-воина, SHM – только радиосхемы и т.д.).


Нельзя хранить файлы вне авторских каталогов, ибо программа будет пытаться в них «войти»


Каждый авторский каталог снабжен описателем лежащих в нем файлов – FILES.BBS. В его структуре есть одно правило (чтобы программа могла читать этот файл) –
Первая строка – с 10-той позиции имя [отчество] знак табуляции Фамилия автора [через запятую – соавтор, если он есть]. Знак табуляции всегда стоит перед первой фамилией (даже в том случае, когда у автора одно имя – Гомер, например)
(у BOOK. – 1 строка не принципиальна).
Вторая строка – пустая.
С третьей строки начинается собственно само описание файлов. Каждый файл – с новой строки, сначала название файла, а с 20-той позиции – название произведения, сериала, формата файла, жанра.
Например:


Борис(знак табуляции)Акунин

AKUNIB01.HA Левиафан
AKUNIB02.HA Пелагия и белый бульдог (Пелагия #1)
AKUNIB03.HA Алтын-Толобас
…..


Андрей(знак табуляции)Воронин, Максим Гарин

VORGAR01.HA Победитель всегда прав (Муму) [1.02.02]
VORGAR02.HA Из любви к искусству (Муму) [1.02.02]


Для каталогов BOOK.[любое расширение] – перед названием произведения стоят имя-фамилия автора (точка-пробел или пробел-кавычка) название произведения:


РАЗНЫЕ не сортированные авторы

AJDING01.RAR Г.Айдинов «Каменщик» (Рассказ, «Искатель», 1968/6)
ALIEN01.ARJ Глеб Киреев «Чужие» по фильму Ридли Скотта “Alien” N 1
ALIEN02.ARJ Мария Цветкова. Новеллизация по фильму Д.Камерона («ALIENS» N 2)


Если по какой-либо причине имя-фамилия автора в авторском каталоге отсутствует – программа впишет туда название каталога.


При расширении коллекции следует помнить, что авторские каталоги внутри жанровых – можно наращивать до полутора-двух тысяч, а вот количество самих жанровых ограничено числом 32.


 

Яндекс.Метрика