NSIS Installer - Форум - Клуб железнодорожников - www.railway.at.ua
Добро пожаловать на сайт! Сегодня 08.05.24, 10:07| RSS | PDA версия


  • Страница 1 из 1
  • 1
Модератор форума: VeTaL_3026  
Форум » Разное » Оффтопик » NSIS Installer
NSIS Installer
AzerEnergoAtomДата: Четверг, 12.02.09, 01:39 | Сообщение # 1


[ Администратор ]

Сообщений: 475
Зарегистрирован: 28.12.08
Пользователь #: 119
Добрый вечер. Я очень часто сталкивался с различными пакетами, которые были запакованы установщиком NSIS. Как-то случайно (уже не помню где и когда) я наткнулся на компилятор НСИС. После поверхностного прочтения инструкции по эксплуатации (как правильно переводится Manual?), мне стало интересно: какой максимальный размер может иметь пакет? В инструкции написано, что более 2 гектаров, но никаких ограничений вроде бы нет. Но если их нет, зачем же тогда они написали там "более 2 Гб"? Может это отголосок FAT32?

У меня много вопросов по этому установщику, но вот пока что главный меня интересует: какой может быть максимальный размер конечного исполняемого файла пакета может создать компилятор NSIS (2.0, пакет 2.09)?

PS> Крутые возможности видны невооруженным взглядом. Компиляция из скриптов - это уже как минимум практически полный контроль над работой установщика. В описании вообще написано, что можно создавать свои собственные окна, не используя стандартные. Огромное количество секций, куча языков, интегрированные стили разных языков программирования (втиснутые в скрипт), всего 34 Кб весит рабочая структура пакета (то есть, те данные, которые, собственно, устанавливают файлы из пакета), LZMA сжатие и еще куча всяких интересных деталей! Короче, умеющим логически мыслить посвящается!!!
_______________________

You're never really done for, as long as you've got a good story and someone to tell it to.
My ASRailRoad is my story...

Offline
ArpoliceДата: Четверг, 12.02.09, 15:05 | Сообщение # 2

null

[ Администратор ]

Сообщений: 327
Зарегистрирован: 14.02.08
Пользователь #: 1
Ничего конкретного по этому компилятору, увы сказать не могу, ибо пользуюсь InnoSetup.
_______________________

Спонсор этого сообщения ~ Клуб Железнодорожников
Offline
AzerEnergoAtomДата: Четверг, 12.02.09, 16:47 | Сообщение # 3


[ Администратор ]

Сообщений: 475
Зарегистрирован: 28.12.08
Пользователь #: 119
Окей, давайте сравним компиляторы. Вот список возможностей NSIS:

Quote

  • Generates self contained executable installers
  • Support for ZLIB, BZIP2 and LZMA data compression (files can be compressed individually or together)
  • Uninstall support (installer can generate an uninstaller)
  • Customizable user interface (dialogs, fonts, backgrounds, icons, text, checkmarks, images etc.)
  • Classic and Modern wizard interface
  • Fully multilingual, support for multiple languages in one installer. More than 35 translations are available, but you can also create your own
  • Page system: You can add standard wizard pages or custom pages
  • User selection of installation components, tree for component selection
  • Multiple install configurations (usually Minimal, Typical, Full), and custom configuration
  • Installer self-verification using a CRC32 checksum
  • Small overhead over compressed data size (34 KB with default options)
  • Ability to display a license agreement in text or RTF format
  • Ability to detect destination directory from the registry
  • Easy to use plug-in system (lots of plug-ins for creation of custom dialogs, internet connections, HTTP downloading, file patching, Win32 API calls etc. are included)
  • Installers can be as large as 2GB
  • Optional silent mode for automated installations
  • A preprocessor with support for defined symbols, macro's, conditional compilation, standard predefines
  • A lovely coding experience with elements of PHP and assembly (includes user variables, a stack, real flow control, etc.)
  • Installers have their own VMs that let you write code that can support:
  • File extraction (with configurable overwrite parameters)
  • File/directory copying, renaming, deletion, searching
  • Plug-in DLL calling
  • DLL/ActiveX control registration/deregistration
  • Executable execution (shell execute and wait options)
  • Shortcut creation
  • Registry key reading/setting/enumerating/deleting
  • INI file reading/writing
  • Generic text file reading/writing
  • Powerful string and integer manipulation
  • Window finding based on class name or title
  • User interface manipulation (font/text setting)
  • Window message sending
  • User interaction with message boxes or custom pages
  • Branching, comparisons, etc.
  • Error checking
  • Reboot support, including delete or rename on reboot
  • Installer behaviour commands (such as show/hide/wait/etc)
  • User functions in script
  • Callback functions for user actions
  • Completely free for any use.



Попытаюсь перевести... :

  • Генерация самораспаковывающихся исполняемых пакетов.
  • Поддержка сжатия алгоритмами ZLIB, BZIP2 и LZMA (файлы могут быть сжаты по отдельности или вместе)
  • Поддержка деинсталлятора (инсталлятор генерирует деинсталлятор)
  • Настраиваемый интерфейс пользователя (диалоговые окна, шрифты, заставки (фон), иконки, текст, сheckmarks, изображения и т.д.)
  • Поддержка классического и современного (Modern) видов
  • Многоязыковой, поддержка нескольких языков в одной инсталляторе. Доступны более 35 языков изначально, можно создавать собственные
  • Система страниц: можно добавлять стандартные страницы и/или свои
  • Поддержка выбора компонентов для установки, в виде дерева
  • Многочисленные конфигурации установки (обычно Минимальная, Нормальная, Полная), а также собственные конфигурации
  • Инсталляционный пакет производит самопроверку используя CRC32 контрольную сумму
  • Маленький размер данных установщика (34 Kб при стандартных настройках)
  • Возможность отображения лицензионного соглашения в текстовом или RTF форматах
  • Возможность обнаружения пути установки из реестра
  • Легко использовать систему модулей (plug-ins) - (большиство модулей для создания нестандартных диалоговых окон, подключения к Интернет, загрузка по HTTP, патчинг файлов, вызов функций Win32 API и пр. уже доступны)
  • Пакет может быть больше 2 Гб.
  • Возможность скрытой установки для автоматизированных приложений
  • A preprocessor with support for defined symbols, macro's, conditional compilation, standard predefines (это для программеров, как правило)
  • A lovely coding experience with elements of PHP and assembly (includes user variables, a stack, real flow control, etc.) (это тоже для них, крутые вещи: можно работать с переменными, стеком и т. д.)
  • Готовые пакеты содержат в себе специальные собственные VMs (виртуальные машины), что позволяет писать код, который может поддерживать:
  • Распаковка файлов (с настраиваемыми параметрами перезаписи)
  • Копирование, переименовывание, удаление и поиск файлов/директорий
  • Модульный вызов DLL (кул, пишешь свою ДЛЛку и потом вызываешь ее при установке, можно даже так игры писать :))
  • Регистрация/Дерегистрация DLL/ActiveX
  • Функции запуска исполняемых файлов (shell execute (запуск) and wait (ожидание завершения) options)
  • Создание ярлыков
  • Чтение, запись, перечисление и удаление ключей реестра
  • Чтение/запись INI файлов (это тоже кул!)
  • Чтение/запись простых текстовых файлов
  • Мощный контроль над строками и численным переменными (string and integer)
  • Поиск окон на основе имени класса или заголовка
  • Контроль над пользовательским интерфейсом
  • Window message sending (думаю, тоже для программеров в основном - не знаю, как перевести верно, но в WinAPI есть такие слова)
  • Интерактивность пользователя с сообщениями и нестандартными страницами
  • Branching, comparisons, etc. (?)
  • Проверка на вшивость (то есть на ошибки)
  • Поддержка перезапуска, включает в себя возможность переименовывания или удаления после перезагрузки
  • Режим команд установщика (показать, спрятать, ждать и т. д.)
  • Возможность предоставления пользователю создавать свои функции в скрипте (то есть во время установки)
  • Функции возврата от действий пользователя
  • Абсолютно бесплатная система для абсолютно любых целей!

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

А что может InnoSetup?
_______________________

You're never really done for, as long as you've got a good story and someone to tell it to.
My ASRailRoad is my story...

Offline
ArpoliceДата: Пятница, 13.02.09, 17:52 | Сообщение # 4

null

[ Администратор ]

Сообщений: 327
Зарегистрирован: 14.02.08
Пользователь #: 1
Может быть NSIS и многофункционален, но InnoSetup используют все разработчики MSTS РуНета. Для нашего пользователя этот установщик также будет очень удобным, да и я лично его уже освоил. Поэтому, переходить пока не намерен smile .
_______________________

Спонсор этого сообщения ~ Клуб Железнодорожников
Offline
AzerEnergoAtomДата: Пятница, 13.02.09, 20:56 | Сообщение # 5


[ Администратор ]

Сообщений: 475
Зарегистрирован: 28.12.08
Пользователь #: 119
Quote (Arpolice)
Может быть NSIS и многофункционален, но InnoSetup используют все разработчики MSTS РуНета. Для нашего пользователя этот установщик также будет очень удобным, да и я лично его уже освоил. Поэтому, переходить пока не намерен .

Я не говорю, что нужно переходить! Я просто хочу понять, какие возможности по сравнению с НСИС имеет InnoSetup (да и вообще другие тоже, но в первую очередь тот установщик, которым пользуются для паковки МСТС аддонов). Понять мне это нужно для того, чтобы сейчас гарантировано знать заранее, что лучше использовать в будущем.
Вчера почитал инфу по InnoSetup, его возможности. Надо сказать, что возможности у него гораздо меньше, но есть и некоторые плюсы перед НСИС (к примеру создание 64-битных пакетов). Правда в данном случае такая фишка - ненужный финт, зато НСИС предоставляет все - вплоть до BillBoards (кто не знает, это сменяющиеся картинки во время процесса установки). В InnoSetup такого, насколько я понял из списка его возможностей, нет. Но даже если есть, то НСИС может создавать билборды произвольного размера, причем каждый билборд может появляться на определенное время (задаваемое в скриптах).

Методы компрессии у них практически одинаковы, у обоих присутствует LZMA алгоритм, так что конечный результат зависит от сложности скрипта.

Тогда у меня следующий вопрос: возможно ли в InnoSetup создавать свои собственные окна, причем не используя стандартные?

PS> Кстати, NSIS Modern UI практически идентичен внешнему виду InnoSetup, так что пользователи в этом плане ничего не заметят.
_______________________

You're never really done for, as long as you've got a good story and someone to tell it to.
My ASRailRoad is my story...

Offline
Форум » Разное » Оффтопик » NSIS Installer
  • Страница 1 из 1
  • 1
Поиск:

2007-2024 © Копирование материалов сайта запрещается! | Хостинг от uCoz | Designed by Arpolice & Sklyar

скрипт статистика посещения