[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
Универсальный Авто-обновляемый Инсталлятор
как дальнейшее развитие темы: Универсальный пакет обновления программ
Универсальный Авто-обновляемый Инсталлятор (УАИ) - это папка с содержащими в ней файлами (назовем эту папку со всем содержимым ячейкой)
УАИ для простого юзера представляет собой черный ящик.
У этого черного ящика есть стандартизированные действия, которые можно совершать с ним и получать информацию о содержании этого черного ящика.
Действия, доступные для каждого такого черного ящика (ячейки):
- обновление инсталлятора (запуск обновлятора)
- запуск инсталлятора
Информационные действия, доступные для каждой ячейки:
- получение названия инсталлятора
- получение версии инсталлятора
- получение характеристик обновлятора и инсталлятора
Рассмотрим конкретно каждые действия.
- обновление инсталлятора (запуск обновлятора):
в каждой ячейке есть файл up.bat
его назначение - обновление программ установки из тернета и коррекции версии этих программ
- запуск инсталлятора
это файл ins.bat
его назначение - тихая (возможно) установка программы из файлов в ячейке
- получение названия инсталлятора:
это текстовый файл name.txt
в этом файле в одной строке название инсталлируемой программы
- получение версии инсталлятора:
это текстовый файл version.txt
в этом файле в одной строке версия инсталлируемой программы
- получение характеристик обновлятора и инсталлятора:
это текстовый файл name1.txt
в этом файле в одной строке цифровой код из 2-х цифр:
первая цифра:
1 - возможное обновление инсталлятора из тернета
0 - инсталлятор не обновляемый
вторая цифра:
1 - возможна тихая установка инсталлятора
0 - инсталлировать программу надо вручную
поясню на примере:
ячейка Foxit Reader:
- поглядели файл name.txt - там строка такая: Foxit Reader - это значит, что в ячейке файлы для обновления инсталлятора и установки Foxit Reader-а
- поглядели файл name1.txt - там строка такая: 11 - это значит, что Foxit Reader можно обновить из тернета и можно тихо установить
- запустили файл up.bat - получили в ячейке самую свежую версию инсталлятора из тернета и скорректировали версию (version.txt)
- поглядели файл version.txt - там строка такая: 8.3.1 - это самая крайняя версия
- запустили файл ins.bat - тихо установили Foxit Reader, если он необходим в системе
ячейка Avast Free:
- поглядели файл name1.txt - там строка такая: 10 - это значит, что можно обновить из тернета и но нельзя тихо установить (установка вручную, надо жать кнопки Далее-Далее ..)
допустим, у нас есть репак установки Zentimo xStorage Manager от elchupacabra в виде файла: Zentimo.2.0.6.1267.exe
наши действия по созданию ячейки для работы с этим файлом:
- создали папку Zentimo (к примеру)
- поместили туда файл Zentimo.2.0.6.1267.exe и переименовали его без упоминаний о версии Zentimo.exe
- создали файл name.txt со строкой (без упоминания о версии): Zentimo xStorage Manager RePack by elchupacabra
- создали файл name1.txt со строкой: 01 (то есть нет возможности обновления этого репака из тернета и есть возможность тихой установки)
- создали файл version.txt со строкой: 2.0.6.1267
- файл запуска обновлятора (для нас он не нужен, ведь обновить инсталлятор нельзя из тернета, только вручную, но он всё равно должен присутствовать!) up.bat - пустой
- файл запуска инсталлятора ins.bat:
@echo off
CD /d "%~dp0"
start /wait Zentimo.exe /SILENT /SP- /NORESTART /SUPPRESSMSGBOXES
некоторые репаки требуют ручной установки (к примеру CorelDRAW Graphics Suite 2017 от KpoJIuK)
для таких случаев файл name1.txt будет со строкой: 00 (то есть нет возможности обновления этого репака из тернета и нет возможность тихой установки)
ЗЫ. обновил примеры ячеек .. 20.09.17
ЗЫ. рабочий проект
http://usbtor.ru/viewtopic.php?p=45477#45477
Вложение


Последний раз редактировалось: wadimus (2017-10-01 20:05), всего редактировалось 2 раз(а)

[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
Зачем это нужно?
создание сборника программ для автоустановки довольно долгое дело. скачать новые версии программ, закинуть в оболочку, описание и коррекция правильной установки - а вдруг в момент коррекции вышла новая версия программ? опять скачиваем, меняем, проверяем ..
так вот, этот комплект ячеек для леххкого создания своей сборки авто-установочных программ.
изначально ячейки пустые.
заходим в каждую (!) и запускаем файл up.bat
ждем .. при наличие тернета ячейка заполнится программами для дальнейшего инсталлирования
ячейка LibreOffice тяжёлая (необходимо скачать около 500 мег!)
далее можно работать .. инсталлировать нужные программы. для этого заходим в нужную ячейку и запускаем файл ins.bat
ЗЫ. ячейка 2GIS немного некорректна :)
- привязал её для своего города (кырск)
- потерял инсталлятор для создания альтернативных ярлыков
я писал как тихо ставить 2GIS на бабочке:
http://nnm-club.name/forum/viewtopic.php?p=8973884#8973884

[Цитировать]

    Profvit
  • 1322
  • Стаж: 2 года 2 месяца
  • Сообщений: 44
  • Репутация:2

    [+] [-]
wadimus, очень полезная штука ay! За пол часа прикрутил к MInstAll и получилось автообновление большей части нужных мне программ одной кнопкой, сейчас прикручу еще и их же установку вообще будет bb.

[Цитировать]

    sergeysvirid
  • 104
  • Стаж: 2 года 10 месяцев
  • Сообщений: 1255
  • Репутация:29

    [+] [-]
  • Откуда: 65 регион (GMT+11)
43481УАИ
Привет! aa
Спасибо! ay respekt
По сути своей получается "автообновляемый сборник программ с автоустановкой"
Один раз собрал сборник "под себя" и более нет необходимости качать какие-либо сборники программ с торрентов.
Клёво было бы собрать запуск этих батников на обновление/инсталляцию прог в оболочку MInstAll (с описанием прог), но это естественно нужно немало времени убить на это дело.
И ещё вопросик. При обновлении (скачивании) новой версии инсталятора, старый инсталлятор "убивается" или просто добавляется в папку новый инсталлятор и со временем они там накапливаются? Если да, то может имеет смысл прописать в батнике up.bat, что-то по принципу, как прописано в батнике del_old_driverpacks.bat из Snappy Driver Installer на проверку и "убийство" в ячейке старых версий инсталлятора (по окончанию скачивания с интернета новой версии инсталлятора)??? ah bk-Profvit,
Приветствую! aa
И я как раз об этом же...
...Мысли сходятся... ag

[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
Profvit, sergeysvirid
в ячейках при обновлении старые файлы (которые обновляются) удаляются!
вместо них скачиваются новые, но с теми же названиями!
поэтому инсталляторы будут продолжать работать.
поменяется только содержимое файла version.txt
замечу, что контроля скачиваемых (обновляемых) файлов нет! пока нет .. надо продумать как это сделать
еще, при прерывании обновлятора (вручную, тернет пропал) - файл не докачается, он будет с тем же названием но неполный.
некоторые обновляторы не докачивают файлы, если они не обновились на офф-сайте, что удобно. но некоторые в любом случае скачаются, даже если версии не сменились. нужен контроль закачиваемых файлов, но это потом ..
и вообще, в ячейках возможно хранить другие файлы.
поглядите ячейку WinRar. там есть файл rarreg.key (ключ), при установке он подхватывается и регистрирует нашу инсталляцию

[Цитировать]

    sergeysvirid
  • 104
  • Стаж: 2 года 10 месяцев
  • Сообщений: 1255
  • Репутация:29

    [+] [-]
  • Откуда: 65 регион (GMT+11)
43493
в ячейках при обновлении старые файлы (которые обновляются) удаляются!
вместо них скачиваются новые, но с теми же названиями!
Понял, спасибо!
43493
замечу, что контроля скачиваемых (обновляемых) файлов нет! пока нет .. надо продумать как это сделать
еще, при прерывании обновлятора (вручную, тернет пропал) - файл не докачается, он будет с тем же названием но неполный.
А вот это, да, есть над чем голову поломать... think bw ab

[Цитировать]

    Profvit
  • 1322
  • Стаж: 2 года 2 месяца
  • Сообщений: 44
  • Репутация:2

    [+] [-]
wadimus, ну можно сделать примитивную защиту от пропадания интернета, чтобы при закачке присваивалось имя новому файлу ..._update и после удачной закачки удалял старую версию, а только потом переименовывал ..._update в новую. В итоге даже если во время обновления программ будет сбой то останутся старые версии.
sergeysvirid, взаимно aa,
ну так мысль то прекрасная, сделать раз и облегчить себе жизнь в последствии ab

[Цитировать]

    korsak7
  • 107
  • Стаж: 2 года 10 месяцев
  • Сообщений: 521
  • Репутация:38

    [+] [-]
Один раз собрал сборник "под себя" и более нет необходимости качать какие-либо сборники программ с торрентов.
В сборниках большинство программ - репаки, с удаленной адварью и т.д.
И есть проблема с недокачкой и с изменением страницы, откуда качается файл. Например скачай Anvir и сравни распознанный номер версии и реальный

[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
обновляторы и инсталляторы открыты, это обычные bat-файлы.
предложите идею, опробуйте её на какой-либо ячейке ..
некий backup с возможностью отката взад .. определить удачность закачки - вводить контроль закачки с помощью errorlevel? наверное, надо.

[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
43501В сборниках большинство программ - репаки, с удаленной адварью и т.д.
да, но многие опасаются ставить репаки .. друг у меня попался на установке компаса 3Д, сейчас переспрашивает - а эта прога бессплатная? :)
я продумывал немного за репаки .. описал, как сделать ячейку для Zentimo.
тут решение такое: или ты сам репакуешь, или качаешь репаки с тернета.
если сам - то можно зарегить программу разными способами: работа с реестром, замена каких-либо файлов ..
вот один хитрый способ сделал для JRiver Media Center, поглядите ..
инсталяционный файл можно распаковать, поправить файлы крякалкой и опять запаковать в репак. я писал об этом где-то ..
но прога часто обновляется, что приводит с замене крякнутых файлов оригиналами.
как метод: ставим оригинальный инсталлятор (он ставится по тихому сюда: "%ProgramFiles%\J River\Media Center 23")
а в корень J River\ ("%ProgramFiles%\J River") копируем кряк jriver.mdc.ptch.exe.
если его потом запустить, то он автоматически закрякает все нужные файлы

[Цитировать]

    bios83
  • 2205
  • Стаж: 1 год 10 месяцев
  • Сообщений: 26
  • Репутация:0

    [+] [-]
Вариант оболочки для установка и обновления программ MInst. К примеру у меня на нем все реализовано.

[Цитировать]

    vovan1982
  • 214
  • Стаж: 2 года 8 месяцев
  • Сообщений: 793
  • Репутация:18

    [+] [-]
  • Откуда: Ростов-на-Дону
wadimus, а чего батники в ANSI? В OEM866 сохранять уже не модно?

[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
vovan1982, а там есть слова на русском? поэтому что 1251, что 866 - разницы нет!
мне удобнеее в 1251. поисковые запросы на офсайтах задаю в батничках только на англ. ответы приходят на тарабарщине (если русский сайт), но мне важны ссылки на файлы. текстовые файлы тоже в 1251.
в некоторых батниках комменты есть на русском. они заремлены и для юзера не важны, спец переключит язык просто.
ЗЫ. замечу, что все названия запускаемых файлов у меня без пробелов!
не Firefox Setup 54.0.1.exe а Firefox-Setup-x64.exe

Комментарий от vovan1982


Если бы не было, то не спрашивал. Вчера запустил обновлятор телеграмм, а там то, что должно на русском, кракозябрами.

[Цитировать]

    wadimus
  • 14910
  • Стаж: 11 месяцев 1 день
  • Сообщений: 60
  • Репутация:9

    [+] [-]
43526Вариант оболочки для установка и обновления программ MInst. К примеру у меня на нем все реализовано.
дальнейший мой ход будет - структуризация и отказ от говорящих названий ячеек. :)
не Cent Browser, а некий код, типа 03.01.21.044
ибо: название ячейки можно прочитать из файла name.txt + version.txt, да и в оболочке такие названия удобнее

[Цитировать]

    korsak7
  • 107
  • Стаж: 2 года 10 месяцев
  • Сообщений: 521
  • Репутация:38

    [+] [-]
43538wadimus, а чего батники в ANSI? В OEM866 сохранять уже не модно?
А как ты их различаешь, если там нет ни одной русской буковки? ai

Страница 1 из 6


Показать сообщения:    

Текущее время: 22-Окт 00:04

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы