Версія для друку

Публікація бази даних "Мисленого древа" на компакт-диску

Публікація на компакт-диску – це дуже просто

Елітна колись професія – дизайнер компакт-дисків – все більше й більше демократизується, а з появою технології "Мисленого древа" зникає геть, перетворюючись на додаток до більш інтелектуальних професій. Було б що публікувати, а як розмістити його на компакт-диску – описано тут.

Велика перевага "Мисленого древа" перед іншими настольними базами даних полягає якраз у тому, що "Мислене древо" проектувалось з прицілом на публікації баз на компакт-дисках. За допомогою "Древа" ви можете створити повністю автономний компакт-диск, який запускається не потребуючи ніякої інсталяції і не залишає ніяких файлів на комп’ютері користувача.

Отже, ви створили базу даних "Мисленого древа" і вирішили, що настав час оприлюднити її шляхом публікації на компакт диску. Для цього треба зробити наступні кроки.

Створюємо проект диску

Як завжди, для нової роботи треба створити новий каталог. Назвемо його, наприклад, CD-Publ. Цей каталог на жорсткому диску буде відповідати кореневому каталогу компакт-диска. Далі вся робота відбуватиметься в цьому каталозі.

Структура каталогів вашого майбутнього компакт-диска – взагалі-то справа персонального смаку. Я раджу створити окремий каталог для програмних файлів "Мисленого древа" (назвемо його RunImage) і окремий – для вашої бази даних (MDDB – від Myslene Drevo Database).

В каталозі MDDB розмістіть свою базу даних, тобто файл *.mys. Істотно, щоб усі зв’язані файли (зображення та/або фільмові файли) знаходились у підкаталогах каталогу MDDB – в такому випадку "Мислене древо", використовуючи відносні шляхи, зможе без проблем знайти всі ці файли.

В каталозі RunImage розмістіть наступні 6 файлів :

MyslDrv.exe – основний файл програми
CRDE96V3.DLL – бібліотека програми
I3SPEC32.DLL – бібліотека програми
I3TIF32.DLL – бібліотека програми
MyslDrv.cnt – зміст контекстної допомоги
MYSLDRV.HLP – контекстна допомога

Всі ці файли знаходяться в тому каталозі, куди ви інсталювали "Мислене древо". Зверніть увагу, що всі ці необхідні програмні файли разом займають несповна 3 мегабайти, тобто менше піввідсотка обсягу компакт-диску. Весь інший простір ви можете заповнити своїми даними.

Оскільки кожен розумний проект компакт-диску має залишати в резерві 5 – 10 мегабайт вільного місця, то можна зробити простий висновок : під час планування розподілу простору компакт-диска на обсяг програмних файлів "Мисленого древа" можна просто не зважати. Цього не можна сказати про інші технології публікацій на компакт-дисках (наприклад, при використанні .pdf-файлів інсталяція Acrobat Reader 5 займає понад 20 мегабайт і вимагає обов’язкової установки на жорсткий диск).

Створюємо оболонку диску

Тепер треба створити оболонку диску, яка має забезпечити його автоматичний запуск після того, як диск вставлено у пристрій. Для цього є три шляхи – простий, химерний і ефективний.

Простий шлях полягає у наступних двох кроках :

1. Створіть в каталозі CD-Publ текстовий файл з іменем autorun.inf і напишіть у ньому наступні два рядки :

[autorun]
open=mds.bat

2. Створіть в каталозі CD-Publ текстовий файл з іменем mds.bat і напишіть у ньому наступний один рядок :

start runimage\mysldrv.exe MDDB\DBName.mys

Тут замість DBName напишіть реальне ім’я вашого .mys-файлу; ім’я mds є умовним і може бути замінене на будь-яке інше (головне, щоб воно відповідало тому, що написано у файлі autorun.inf.

Недоліком такого простого способу автозапуску є те, що від виконання файлу mds.bat залишається вікно пасивного сеансу DOS, яке треба закривати вручну.

Химерний шлях полягає у використанні генераторів для оболонок компакт-дисків, яких існує немало. Я ними ніколи не користувався, тому що завжди ішов ефективним шляхом.

Вивчаємо програму MDShell

Ефективний шлях полягає у використанні програми MDShell (Універсальна оболонка компакт-дисків від "Мисленого древа"). Цю програму ви можете скопіювати з будь-якого з наших компакт-дисків.

Отже, робимо наступні кроки :

1. Копіюємо програму MDShell.exe в каталог CD-Publ.

2. Створюємо в каталозі CD-Publ текстовий файл з іменем autorun.inf і пишемо у ньому наступні рядки :

[autorun]
open=MDShell.exe

[MDShell]
title={Заголовок вікна MDShell}
content=Content\Content.html
sound=Content\Intro.wav

В цьому файлі параметр title вказує на рядок, який стане заголовком вікна програми MDShell. Звичайно він повторює назву бази, але може містити і щось інакше за вашим вибором.

Центральним є параметр content. Він вказує на .html-документ, який буде відображено у вікні програми MDShell. Шлях до цього файлу має бути відносним і має відраховуватись від кореневого каталогу компакт-диску (в ролі якого у нас виступає каталог CD-Publ). В нашому прикладі він вказує на підкаталог Content каталогу CD-Publ.

Параметр sound є необов’язковим. Він вказує на звуковий файл, який починає автоматично програватись під час запуску програми MDShell у ролі такої собі увертюри до компакт-диску. Якщо на комп’ютері користувача немає звукової карти, цей параметр буде проігноровано (перевірено неодноразово). Якщо вам така увертюра непотрібна, можете просто не вписувати цей рядок.

3. Редагуємо файл змісту (в нашому прикладі – Content.html). Це звичайний .html-документ з усіма можливостями форматування, вставки зображень, перехресних посилань і т.д. Його призначення – містити анотацію компакт-диску і підказку по використанню диску.

Основна сила цього файлу полягає в тому, що ви на допомогу користувачеві розміщуєте десь рядок такого змісту :

<a href=">program=RunImage/MyslDrv.exe>parameters=MDDB/DBName.mys">
Клацніть тут</a>, щоб запустити базу даних.

Як бачимо, ціль посилання містить нестандартний текст, розділений символами >, які не можуть входити в імена файлів. Параметр program вказує на програму, яку треба запустити (в нашому випадку – це програма MyslDrv.exe із каталогу RunImage). Параметр parameters містить командний рядок, який треба передати програмі; в нашому прикладі він вказує на файл DBName.mys в каталозі MDDB.

Два істотних моменти в кодування цього посилання :

1. шляхи треба писати в UNIX-стилі, з використанням /, а не в DOS-Win стилі з використанням \.

2. шляхи до всіх файлів мають бути відносними і відраховуватись від каталогу з програмою MDShell, а не від каталогу з файлом Content.html.

Після сказаного вас не здивує, що наступний рядок призначено для запуску контекстної допомоги :

<a href=">program=RunImage/MyslDrv.hlp">Клацніть тут</a>,
щоб запустити файл контекстної допомоги.

Випробовуємо

Виготовлений проект диску треба обов’язково перевірити. Раджу такі кроки :

1. Запустіть програму автозапуска з каталогу CD-Publ і подивіться, як вона працює. Якщо в якості такої програми вживається MDShell – перевірте заголовок вікна, послухайти, чи звучить увертюра, нарешті, обов’язково клацніть по кожному посиланню, яке має запускати програми. Майте на увазі, що ви не можете перевірити функціонування цих посилань у браузері, оскільки вони адресовані програмі MDShell.

2. Спробуте записати зміст каталогу CD-Publ на перезаписуваний (rewritable) компакт-диск. і перевірте на ньому, як все працює. пам’ятайте, що найбільше CD-R заготовок псується саме у процесі комплексного тестування готового продукту за принципом "одна виявлена помилка – одна зіпсована заготовка".

3. Якщо ви збираєтесь наповнити свій компакт-диск по самі вінця, слід пам’ятати, що таблиця змісту диску (TOC – table of content) також займає певний простір; якщо ваш проект складається з кількох тисяч файлів, то цей простір може сягати кількох мегабайт, і на це треба зважати.

Головне у картині – це рама

Нарешті, все працює як слід і записано на постійний (CD-R) компакт-диск, який заради самоповаги слід називати мастер-диском або головною копією. Але не поспішайте радіти і пригадайте собі науку Віктора Суворова (роман "Вибір") : головне у картині – це рама. А у компакт-диска, відповідно – обкладинка.

Важливість обкладинки не слід недооцінювати : я знаю кілька прикладів, коли "готова" робота успішно проходила всі приймальні комісії завдяки ефектній обкладинці диску (в той час як самого диску в коробці може взагалі не бути). Закономірність проста : чим вищим є рівень зібрання, перед яким ви демонструєте свою роботу, тим менше шансів, що саме диск (а не полістіролова коробка з кольоровою обкладинкою) стане предметом уваги.

Якщо ви слідували наведеним тут рекомендаціям – ваша публікація обов’язково буде успішною.