Welcome to eComStation.RU site!

Select your language: Russian English Deutch Spanish Italian Portuguese Czech Polish French

Frequently asked questions and answers:

eComStation.RU

ru · en · de · es · it · pt · cz · pl · fr
eComStation - это совершенно другая операционная система для PC (IBM OS/2 Warp)
Программы, новости, статьи, поддержка пользователей, оборудование, вопросы и ответы.
 
      Что такое OS/2?НовостиУстановкаОбновлениеПрименениеБудущееСообществоКупить    
(Карта сайта)

 
 
Списки протестированного OS/2 оборудования
Как получить драйверы OS/2 бесплатно

 
Обновление

 
Программы

 
(Санкт-Петербург)

 
Преимущества (1)

 
Разработчику (1)

 
(Пайпы программ)

 
Компании: (1)

 
История (1):

 
(Бонусы)

 
Советы:

 
(Барьеры и решения)

 
Технологии: (1)

 
(Применение в науке, лаборатории, ..)

 

 
Готовые решения:

 
Новая eComStation:

 
Будущее: (1)

 
(Ссылки на другие сайты)

 
(Картинка дня)

 
Артефакты OS/2

 
Гаджеты

 

Создание дистрибутива программы для инсталятора WarpIn


TITLE: Создание дистрибутива программы для инсталятора WarpIn

DATE: 2010-09-01 00:44:57

AUTHOR: eCo Software

В ближайшие 2-3 года WarpIn останется главным инсталятором программ eComStation.

  • У каждого пользователя eComStation установлен WarpIn (в eCS 1.2 еще были проблемы, начиная с eCS 1.2.5 WarpIn встроен в операционную систему корректно)
  • В формат .wpi (WarpIn) запакованы сотни программ.
  • Пользователи привыкли к WarpIn, управляют пакетами через его менеджер.
  • Разработчики знают как паковать программы в .wpi

WarpIn в действии..

  • Текущая версия WarpIn 1.0.19
  • Скачать: ftp://ftp.netlabs.org/pub/warpin/
  • Продукт компании Netlabs.org (Швейцария)
  • Разработчики: Ulrich Mueller, .. - всего около 10 человек.

 

Источники информации?

Как запаковать свою программу в WarpIn? Где прочитать про формат текстового файла .wis ?

Вся-вся информация написана в книжке -> (в каталоге WarpIN) view wpi_prog.inf, какие переменные, какие ключевые слова, какие команды есть.

Также полезно вскрывать пакеты других разработчиков и смотреть что и как они делают (wic -x package.wpi и wic -X package.wpi)

Рассмотрим основные варианты запаковки программ в формат WarpIn.

Сценарий 1: Программа + данные, создать 1 объект программы

  • Есть: .exe + .ico + .dat файлы
  • Задача: установить в каталог с программами и создать объект программы на рабочем столе.

Скачать демонстрационный пакет
(Для сборки .wpi дистрибутива достаточно запустить calcmi.cmd)

Все файлы программы лежат в подкаталоге и они будут установлены в каталог программ x:\PROGRAMS\CalcMi

Теперь рассмотрим файл calcmi.wis в котором описан пакет,
вот каталог, куда устанавливать (значение переменной раскроется и получится x:\PROGRAMS\CalcMi):

      TARGET="$(WARPIN_DEFAULTAPPSPATH)\CalcMi"

На рабочем столе будет создан объект программы:

      CREATEOBJECT="REPLACE WPProgram|CalcMi|<WP_TOOLS>|
          EXENAME=$(1)\Calcmi.exe;STARTUPDIR=$(1);OBJECTID=<CALCMI_EXE>;"

Создание объекта 1:1 как в REXX. (Много примеров работы с WPS, и примерами создания объектов на рабочем столе можно найти в каталоге x:\ecs\install\*.cmd на вашем компьютере)

Итак, первое правило: создавайте все объекты с помощью CREATEOBJECT, а не вызовом дополнительного REXX-скрипта. Тогда, если юзер захочет убрать программу из системы, WarpIn сам удалит созданные при установке объекты.

Полезный совет: В строчке PACKAGEID давайте будем писать версию программы не в виде 2.1, а в виде штампа времени (YYYY\MM\DD): 2010\08\25

 

Сценарий 2: Драйвер + добавить загрузку в CONFIG.SYS

  • Есть: драйвер .sys
  • Задача: установить его в системный каталог, добавить загрузку в CONFIG.SYS

Скачать демонстрационный пакет
(Для сборки .wpi дистрибутива запустите x-wo.cmd)

Пример добавления строки в CONFIG.SYS

      CONFIGSYS="SET C1=SDDGRADD,WOVERLAY | UNIQUE(SDDGRADD)"

Обратите внимание: При установке драйвера обычно фиксируют целевой каталог, для этого пишем "FIXED":

    ..
      INDEX=1 FIXED
    ..

 

Сценарий 3: .. + проверить наличие рантаймов или других пакетов

Проверять наличие рантаймов особенно важно для WPS программ, иначе пользователь никогда не догадается, почему рабочий стол не загружается.

Добавьте в секцию <PCK> .. </PCK> строчку вида:

      REQUIRES="eCo Software\Runtime\Base\2008\03\02"

В кавычках указан PACKAGEID другого пакета (рантайма), без его наличия в системе, установка вашей программы будет прерываться.

В примере выше написано, что программа требует наличия Base Runtime от компании eCo Software, версия которого 2008/03/02 или выше.

Полезный совет: Обязательно укажите в документации системные требования своей программы и список (URL) рантаймов, которые должны быть заранее установлены.

 

Сценарий 4: Два пакета в одном .wpi

Если в 1 .wpi пакет надо положить две программы (или две части одной программы), которые должны быть установлены в 2 разных каталога, тогда нужно описать два пакета <PCK> .. </PCK>

Скачать демонстрационный пакет
(Для сборки .wpi дистрибутива запустите x-About.cmd)

В этом примере .exe файл и его данные отправляются в 1 каталог, а несколько файлов с данными - в другой каталог.

 

Сценарий 5: Установка особенных пакетов

Также советуем смотреть дистрибутивы:

Для установки Аудио I/O Proc mmioCast
Установка шрифтов droid

 

Сценарий 6: Установка сложных программ

Отдельно стОит рассмотреть установку OpenOffice.org и XWLAN Manager.

(присылайте свои комментарии к .wis файлам этих программ, ваше имя будет указано в статье)

 

Ограничения WarpIn:

WarpIn имеет несколько ограничений:

  • WarpIn не приспособлен для решения зависимостей, как RPM (т.е. нет автоматической подкачки нужных библиотек и рантаймов).
  • Он с трудом устанавливает огромные программы типа OpenOffice.org. Используйте другой инсталятор.
  • Не пытайтесь делать мультиязычные пакеты. Собирайте пакеты только на английском языке.
  • В WarpIn нет возможности предоставить пользователю какой-либо выбор, кроме как выбор пакетов. Следовательно, создавать пакеты нужно с этим требованием. Например, если есть различные конфигурации одной программы, отличающиеся только создаваемыми ссылками на рабочем столе, в автозапуске и т.п., то уточнить у пользователя вариант установки будет непросто.
  • Также нет возможности организовать на момент установки автоматическую деинсталляцию других программ, например, более старых версий устанавливаемой программы. И если название программы в новой версии немного изменилось, то старая запись в БД варпина не будет затёрта.

 

В каких случаях программу надо паковать в .wpi?

WarpIn должен использоваться в случаях:

  • Если надо прописать что-то в CONFIG.SYS (все драйверы),
  • если программа должна иметь возможность де-инсталяции (все WPS-программы),
  • если программа зависит от рантайма и нужны проверки (все портированные),
  • если программа большая и сложная (OpenOffice.org),
  • если ..

Думайте о пользователях! У них нет времени разбираться в текстовых инструкциях и раскладывать файлы вручную.

Присылайте дополнения к этому тексту

a) Название сценария, b) текст с описанием сценария, c) ваше имя

через веб-форму

 


Дополнительная информация:

  • Авторы текста: Eugene Gorbunoff, Yuri Larin (про ограничения)

Попробуй программу:

Искать программы в интернете? Слишком долго и неудобно. eCo Market - можно скачивать софт без веб-браузера.

Комментарии:

Joseph
2010-09-02 15:27:22

Очень скудно.

Нет примера именно сложных пакетов.

Нет примера регистрации классов

Нет инструкции по выполнению сложных действий в процессе установки - у меня продукт помимо стандартных операций прописывает себя в несколько служебных конфигураций с помощью собственного рантайма - как это сделать?

Николай Колесников
2010-09-03 15:26:30

Похоже, это первый обзор про warpin, для начала сойдёт. "Много буков". А мне интересно, как вызывать REXX скрипт? Как вызвать детект одной железки (detect.exe) и обработать код возврата из скрипта установки?

Oliver Cremerq
2010-09-10 12:18:24

Please use for repacking of "Microsoft Fonts Pack" the wis code from the new font-packages from Alex Taylor (on Hobbes).

For Example: droidfont_100.wpi

Improver
2010-09-13 08:55:51

2Joseph:

это можно сделать только вызовом EXECUTE="имя команды". Команда будет исполнена после установки пакета.

2Николай Колесников:

Можно внедрить REXX-скрипт в пакет инсталляции, но следует учитывать, что этот скрипт будет исполнятся ДО инсталляции программы, т.е. если скрипт будет вносить какие-либо изменения в конфигурацию системы, то они будут произведены, даже если пользователь только откроет пакет варпина.

А вызвать внешний REXX-скрипт можно при помощи той же команды EXECUTE="...", но вот только код возврата обработать уже не получится.

Прокомментируйте эту статью (напоминаем, автор работал над текстом несколько недель, уважайте мнение других).


Ваше имя:

Ваш E-Mail:

CODE:
......

  

Ваш комментарий:


Писать программы для eComStation - это выгодно: a) система имеет более компактный API, который хорошо продуман и эффективен, b) Рынок не такой бесконечный, как у Windows. Все пользователи eComStation узнают про ваш продукт, c) Один разработчик значительно влияет на всю ОС.

Статьи

Операционная система
Программное обеспечение
Оборудование
Для разработчика
Разное
Колонка редактора


Готовая eComStation на SSD диске

 





Последний активный опрос: Какая высота барьера RPM?

IBM OS/2 Warp

 
Обучение новичков

Отчет: OS/2 совместимое оборудование

 
Статьи


   
  Почему eComStation?
Возможности
Особенности
Применение
Ролики и скриншоты
   eComStation для
для бизнесменов
для студентов и инженеров
для продавцов компьютеров
сообщество пользователей
   Разработчик
Распространить программу
Описание API, библиотеки
Начать новый проект
Конкурсы
   Программы
Он-лайн каталог
Выбрать через eCo Market
   Служба поддержки
Отправить вопрос
Купить eComStation
Вопросы и ответы
Обучение новичков
 
 
© 2001 - 2014 eCo Software, All rights reserved
eComStation is a registered trademark of Serenity Systems International
OS/2 Warp is a registered trademark of IBM Corporation
 

 

 
Картинка дня: