Если Вы решили заняться распространением своих программ, то без установочного дистрибутива не обойтись. В настоящее время практически все программы имеют инсталлятор, обычно он называется Setup.exe. В этой статье мы рассмотрим на примере, как собрать инсталлятор для приложения Access и разберем некоторые особенности, которые необходимо при этом знать.
Как уже говорилось ранее, Access не позволяет сделать исполняемый файл, способный работать без Access. Но в то же время, Microsoft предлагает для решения проблемы воспользоваться пакетом Microsoft Office Developer, в состав которого входит и лицензия на распространение программы Microsoft Access runtime. Программа Microsoft Access runtime – это версия Access, которая позволяет пользователям выполнять, но не модифицировать приложение Access. Интересно, что полную версию Access можно запустить в runtime – режиме, задав в командной строке ключ /runtime. Например, создайте на рабочем столе ярлык, кликнете по нему правой кнопкой мыши, в появившемся диалоговом окне в поле объект напишите примерно так: (это для Office 2000 – XP, а для 2003 нужно будет исправить вместо Office10 - Office11)
"C:\Program Files\Microsoft Office\Office10\MSACCESS.EXE" "D: \Базы\Моя База.mdb"/runtime
а в поле «Рабочая папка»:
"D: \ Базы"
Теперь запустим приложение через этот ярлык. Откроется окно проекта Access, но ярлыка Access, а так же стандартных панелей инструментов уже там не будет. Это и есть runtime – режим.
Для начинающих разработчиков распространение приложений Access через пакет Microsoft Office Developer вряд ли приемлемо. Ведь он стоит денег, и не малых. Мы рассмотрим другой способ, при помощи бесплатного инсталлятора Inno Setup. Вообще, есть конечно и другие как платные, например InstallShield, так и бесплатные инсталляторы. Различаются они по удобству работы, размеру создаваемого дитсрибутива. Inno Setup – свободно распространяемый инсталлятор для программ Windows. Английские версии появились ещё в 1997, теперь Inno Setup переводится на несколько языков, а инсталляторы может создавать более чем на 20 языках. Inno Setup превосходит многие коммерческие инсталляторы по возможностям, стабильности и размеру создаваемых файлов.
Итак, рассмотрим задачи, которые нужно решить (определим только минимальные). Наш инсталлятор должен сделать следующее:
- Распаковать файлы в нужные места
- Создать папку в ка��алоге программы (папка «Коп» - для хранения резервных копий базы)
- Создать меню запуска приложения в Пуск – Все программы, а так же иконку на рабочем столе
Это необходимый минимум. Но, разумеется, это далеко не все возможности Inno Setup. Ведь не зря его используют многие разработчики. Но в данной статье я ограничусь только этим, желающие глубже изучить возможности программы могут обратиться к справочной системе. В Интернет есть множество ссылок как на программу, так и на переводы справки. Например, Inno Setup 5.1.6. и справку к нему Вы можете скачать здесь… Английский сайт программы http://www.innosetup.com
Особенность создания инсталлятора в Inno Setup – это то, что инсталляторы создаются при помощи скриптов - простых текстовых файлов ASCII, напоминающих .INI файлы. Скрипты редактировать легче, чем, например, работать с интерфейсом Installshield. Скрипты имеют расширение ".iss" (inno setup script). В нём указываются все параметры инсталлятора, и при установке, программа ассоциирует себя с этими файлами.
Для начала попробуйте поэкспериментировать, создавая инсталлятор при помощи мастера, а затем изучая структуру полученного скрипта. В принципе, я думаю нет нужды подробно описывать, что где нажимать. Inno Setup настолько прост в освоении, что без проблем изучается, что называется «методом научного тыка». Вот например скрипт инсталятора, который делает определенные ранее задачи (все файлы дистрибутива находятся в каталоге D:\Setup.)
[Setup] AppName=Моя программа AppVerName=Моя программа. Версия 1.0. AppPublisher=MyProgram, Inc. AppPublisherURL=http://MyMySoft.ru/ AppSupportURL=http://MyMySoft.ru/ AppUpdatesURL=http://MyMySoft.ru/ DefaultDirName={pf}\MyProgram DisableDirPage=no DefaultGroupName=Моя программа DisableProgramGroupPage=yes LicenseFile=D:\Setup\license.txt InfoAfterFile=D:\Setup\readme.txt AlwaysCreateUninstallIcon=yes
[Tasks] Name: "desktopicon"; Description: "Создать ярлык на &Рабочем столе"; GroupDescription: "Дополнительные ярлыки:"
[Files] Source: "D:\Setup\Сервер.mdb"; DestDir: "{app}"; DestName: "Сервер.mdb"; Source: "D:\Setup\license.txt"; DestDir: "{app}"; Source: "D:\Setup\readme.txt"; DestDir: "{app}"; Source: "D:\Setup\Log.JPG"; DestDir: "{app}"; Source: "D:\Setup\Log.ico"; DestDir: "{app}"; Source: "D:\Setup\База.mdb"; DestDir: "{app}";
[INI] Filename: "{app}\MyProg.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://MyMySoft.ru/"
[Dirs] Name: "{app}\Коп"
[Icons] Name: "{group}\Моя программа"; Filename: "{app}\База.mdb" ;WorkingDir: "{app}";IconFilename:{app}\Log.ico Name: "{group}\Сайт программы"; Filename: "{app}\MyProg.url" Name: "{userdesktop}\Моя программа"; Filename: "{app}\База.mdb" ;WorkingDir: "{app}"; IconFilename:{app}\Log.ico;Tasks: desktopicon
|