Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » MInstAll - Мастер автоустановки приложений

Закрытая тема
Настройки темы
MInstAll - Мастер автоустановки приложений

Аватара для Сrack

Ветеран


Сообщения: 1255
Благодарности: 436

Профиль | Цитировать


Изменения
Автор: Vadikan
Дата: 01-09-2023
Описание: Проект заморожен
Проект заморожен, автор удалил ссылки на программу - сообщение автора



Оригинальная шапка темы



MInstAll - Мастер установки приложений, бесплатная утилита для автоматической (тихой) установки приложений и настройки системы. Для работы программы не требуется отключение UAC (контроля учетных записей) т.к. запускаемые приложения наследуют права от MInstAll. В отличие от WPI программа имеет простой, интуитивно понятный интерфейс редактора для файлов конфигурации, и более быструю работу. Идеально подходит для работы в корпоративных сетях, т.к. оптимизирована для запуска непосредственно с сетевого диска, предусмотрена возможность предварительного копирования дистрибутива во временную папку. В программе реализована функция для проверки результата инсталляции и другие полезные функции.

Возможности и описание функций

Возможности:
• Сортировка программ по группам
• Создание нескольких профилей
• Справочник ключей для разных типов инсталляторов
• Сортировка последовательности групп и приложений
• Скрытый запуск приложений
• Два режима работы: "Установка" и "Редактирование"
• Добавление приложений перетаскиванием из проводника Windows (файлового менеджера)
• Перезагрузка операционной системы с последующим продолжением установки
• Установка иконок из exe-шника инсталлятора, из ico-файлов, из dll

Путь к иконке:
Код: Выделить весь код
%WinDir%\system32\shell32.dll,21
где 21 - номер иконки

• Блокировка режима редактора

Все настройки хранятся в файле minst.ini, это профиль по умолчанию.
Для блокировки режима редактора, нужно установить значение параметра Lock=1
Для включения возможности редактирования, нужно установить значение параметра Lock=0
Код: Выделить весь код
[MInst]
...
Lock=1
...
Можно всегда запускать программу в режиме редактора, не зависимо от значения Lock, с ключем /edit
Код: Выделить весь код
MInst.exe /edit
• Авто запуск установки для профиля по умолчанию

Запускать с ключем /t
Код: Выделить весь код
MInst.exe /t 20
запуск установки через 20 сек.
• Функции Exclude и Include

Exclude:
Для нескольких приложений, взаимно несовместимых, указываем одну и ту же группу несовместимости, в редакторе она называется "Группа взаимно исключаемых".
Название группы любое, но соответственно одно и то же для несовместимых приложений. Пункт "Выйти из программы установки" в группе взаимно исключаемых "End".
Include:
При выборе приложения, оно может автоматически выбирать для установки другое приложение, в поле "Включать установку" указываем название приложения которое включится автоматически.

• Спец. профиль для запуска портативных приложений

Что бы сделать специальный профиль для запуска портативного софта, нужно поставить галочку в этом окне:



В режиме "Установка" портативные программы можно запускать по двойному клику,
в режиме "Редактирование" будет открываться окно редактора.

Режим "Установка" это когда скрыта боковая панель, а в контекстном меню нет пунктов по редактированию.
Режимы переключаются кнопкой в верхнем правом углу.
• Импорт reg-файлов

На 64-битной ОС информация по умолчанию добавляется в ветку Wow6432Node, но можно импортировать в основную ветку, для этого надо указать ключ "/x64", этот ключ не влияет на работу команды в 32-битной ОС.

• Поддержка Unicode

Профиль будет сохранятся в Unicode если установить параметр Unicode=1
Код: Выделить весь код
[MInst]
...
Unicode=1
...
• Проверка наличия уже установленных приложений

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

Проверка через реестр с помощью GUID:
Для включения проверки, нужно указать правильные GUID и версию, в таком виде, в котором она прописывается в реестре, а не так, как автоматом определилась при добавлении приложения.
Определить без ошибочно можно с помощью Check Device

Можно указывать два GUID разделив их знаком ";" (Больше двух GUID указывать нельзя)
Например когда приложение двух разрядное, и у каждой разрядности свой GUID.


Версию можно сократить, отбрасывая цифры после точки. Например если в реестре версия 3.4.0.30460 в MInstAll можно указать 3.4.0 или 3.4 или даже 3.
Если установлена такая же или более новая версия, приложение помечается зеленой галочкой.
Если установлена более старая версия, приложение помечается желтым восклицательным знаком.
Если в реестре нестандартная версия с буквами, словами и другой ерундой, в MInstAll указываем точно так же (без сокращений).

В операционных системах, где .NET Framework является частью системы его нет в списке установленных программ, поэтому в программе есть встроенный механизм проверки.
Для проверки .NET Framework указываем в поле GUID спец. код:
NF3.5SP1 - для проверки наличия Microsoft .NET Framework 3.5 SP1
NF4.5C - для проверки наличия Microsoft .NET Framework 4.5 Client
NF4.5F - для проверки наличия Microsoft .NET Framework 4.5 Full
NF4.6C - для проверки наличия Microsoft .NET Framework 4.6 Client

Проверка по наличию файла:
Если по GUID проверять не представляется возможным, можно проверять по наличию файла, при этом версия не учитывается.
Для включения проверки, в поле GUID указываем путь к файлу, для универсальности используем переменные, например:
если приложение 32-битное:
Код: Выделить весь код
%ProgramFiles%\Microsoft Office\Office14\WINWORD.EXE
если приложение 64-битное:
Код: Выделить весь код
%SystemDrive%\Program Files\Microsoft Office\Office14\WINWORD.EXE
Второй вариант, для тех случаев, когда приложение ставится в зависимости от разрядности ОС, на x64 ставится 64-битная версия, а на x86 ставится 32-битная версия.

• Отключение редиректа на 64-битной ОС для *.cmd и *.bat файлов

При необходимости, можно отключить редирект, указав ключ /x64 этот ключ обрабатывает сама оболочка MInstAll, он не передается в исполняемый файл.

• Идентификация инсталлятора с целью определения ключей для "тихой" установки

В комплекте идет утилита skf.exe, если она не определила инсталлятор, то можно попытаться запустить установщик с ключами "/?" и "/Help", для этого есть специальные кнопки.

• Описание программы в отдельном окне

Для открытия описания в отдельном окне, щелкните средней кнопкой мыши по интересующему приложению.
Из режима "Установки" данное окно будет открываться по двойному клику.

• Дополнительная информация в заголовке главного окна

Можно выводить свою информацию в заголовке окна, за нее отвечает параметр Caption в файле minst.ini, в заголовке можно использовать переменные: {mver}, {winver}, {winbuild}, {winname}, {p}.
{mver} - Версия MInstAll
{winver} - Версия ОС в привычном представлении
{winbuild} - Номер сборки Windows
{winname} - Название операционной системы
Так же эти переменные можно использовать в описании профиля.

• Открытие каталога с дистрибутивом через файловый менеджер

Путь к файловому менеджеру и ключи запуска задаются в файле minst.ini параметры FMPath и FMKey. Для параметра FMKey доступны две дополнительные переменные {OpenPathFile} = путь к файлу или {OpenPathDir} = путь к каталогу.

Пример для JustManager:
Код: Выделить весь код
FMPath={Patch}\Portable\JustManager\JustManager.exe
FMKey={OpenPathDir}
Пример для Total Commander:
Код: Выделить весь код
FMPath={Patch}\Portable\totalcmd\TOTALCMD.EXE
FMKey={OpenPathFile} r="%UserProfile%\Downloads" /i="{Patch}\Portable\totalcmd\wincmd.ini" /f="{Patch}\Portable\totalcmd\wcx_ftp.ini"
• Запуск методом FirstLogonCommands

Команда ищет файл профиля %i:\MInstAll\profiles\Autounattend.ini на всех дисках, при наличии данного профиля запуск MInstAll с автоматической установкой программ из профиля %i:\MInstAll\profiles\Autounattend.ini
Преимущество метода, это не надо перепаковывать install.wim, достаточно положить в корень диска файл ответов.
У метода есть недостаток, при наличии картридера, если буква пустого картридера будет раньше буквы диска с MInstAll, появится ошибка, для продолжения достаточно закрыть сообщение с ошибкой.
Команда start используется для того, что бы избежать ожидания выполнения запущенной команды, тем самым Windows продолжит процесс загрузки до рабочего стола не дожидаясь пока MInstAll установит все программы.

HTML код: Выделить весь код
<FirstLogonCommands> <SynchronousCommand wcm:action="add"> <Order>1</Order> <CommandLine>cmd /c "FOR %i IN (C D E F G H I J K L N M O P Q R S T U V W X Y Z) DO IF EXIST %i:\MInstAll\profiles\Autounattend.ini start """" %i:\MInstAll\MInst.exe {Patch}\profiles\Autounattend.ini /t 0 & exit"</CommandLine> </SynchronousCommand> </FirstLogonCommands>




FAQ:
• Выбор приложений по умолчанию

Есть два режима, в зависимости от опции Меню -> Настройки -> "Не снимать выбор с установленных и несовместимых в режиме редактора".

Если опция выключена (старый режим):
При сохранении профиля, расставленные галочки сохраняются. При загрузке профиля галочки ставятся только на против тех приложений, которые не установленны и при этом совместимы с текущей системой. Это, что бы вручную каждый раз не снимать галочки перед установкой. Перед каждым сохранением профиля, нужно восстанавливать галочки для уже установленных приложений, для этого есть кнопка "По умолчанию". При нажатии на кнопку "По умолчанию" галочки расставятся так, как они были расставлены перед прошлым сохранением в прошлом сеансе, потом при необходимости расставьте галочки и сохраните. Что бы каждый раз не видеть предупреждения о том, что приложение уже установленно или не совместимо, предварительно перейдите в режим редактирования (для сохранения все равно туда пойдете).

Если опция включена (новый режим, рекомендую):
При сохранении профиля, расставленные галочки сохраняются. При загрузке профиля, в режиме "установки" галочки ставятся только на против тех приложений, которые не установленны и при этом совместимы с текущей системой. При загрузке профиля в режиме "редактирования" галочки ставятся на всех приложениях выбранных "По умолчанию", даже если они уже установленны или несовместимы с текущей системой. Список выбранных "По умолчанию" формируется непосредственно при сохранении профиля. При переходе между режимами, галочки будут автоматически сниматься или ставится для выбранных "По умолчанию", имеются ввиду те приложения, которые уже установленны или несовместимы с текущей системой.


• Как назначить профиль по умолчанию (или как открывать другой профиль при запуске программы)

Профиль по умолчанию, тот что открывается при запуске MInst.exe, это файл MInst.ini, он как и любой другой, может быть профилем для авто-установки программ или профилем для запуска портативных программ. Режим переключается в свойствах профиля (Меню -> Файл -> "Свойства профиля"). Если так сложилось, и вы желаете открывать при запуске другой профиль, то есть три варианта:
1. Вариант: Физически поменять местами файлы профилей, ini-файлы и idb-файлы соответственно, последние можно вообще удалить, т.к. это кеш, после сохранения через программу они появятся опять. Определить, какой конкретно файл относится к текущему профилю, можно в свойствах профиля. Имейте ввиду, т.к. файл MInst.ini не только профиль, но еще и файл настроек, после замены, все текущие настройки сбросятся по умолчанию.
2. Вариант: Если пользуетесь моим AutoRun.exe, то можно в файле autorun.inf прописать параметр Profile который указывает путь к файлу профиля.
Код: Выделить весь код
[Autorun]
***
Profile={Patch}\Profiles\2_Portable.ini
3. Вариант: Запускать MInst.exe (не путайте с AutoRun.exe) c ключем, в качестве первого параметра которого, путь до ini-файла нужного профиля.
• Дополнительные функции в контекстном меню

Что бы открыть контекстное меню, щелкните правой кнопкой мыши по нужному приложению.

• Авто установка в зависимости от версии и разрядности ОС

Делаем универсальный авто установщик с помощью моей утилиты Macros,
или любым другим вашим способом и добавляем его в MInstAll. Для разрядности есть специальная переменная.

• Добавление/Удаление профилей

Для добавления нового профиля, есть специальная функция в контекстном меню.
Имена ini-файлов профилей, для удобства можно переименовывать как угодно, хранить их можно в подкаталоге Profiles,
исключение файл minst.ini, он должен быть рядом с MInst.exe т.к. он одновременно и файл настроек.

• Переменные

Кроме стандартных переменных, программа поддерживает не стандартные переменные:
{Patch} - путь к папке из которой запущено приложение MInst.exe
{Root} - на папку выше {Patch}
{Disk} - буква диска, с которого запущено приложение
При добавлении приложений, переменные добавляются автоматически.
{P} - Разрядность ОС, принимает значение x86 или x64, нужно вручную заменять разрядность в путях на эту переменную, в тех случаях, когда это необходимо
{V} - Версия операционной системы
• Несколько команд для одного пункта

Вариант 1:
Используйте bat-ник, в качестве текущего каталога автоматически назначается каталог где лежит bat-ник.

Вариант 2:
Выполнение целого профиля одним пунктом



• Импорт в реестр до и после установки приложения

Смотри описание "Несколько команд для одного пункта"
• Ошибки при использовании дисков с аппаратной защитой от записи

MInstAll ничего не пишет на флешку (кроме настроек при закрытии программы).
Есть проблема в штатной виндовой функции, которая используется для загрузки ассоциированных иконок, проблема бывает только на дисках с аппаратной защитой от записи.
Cпособа решения:
При использовании дисков с аппаратной защитой от записи, должна быть включена опция: Главное меню -> Настройки -> "Определять защиту от записи".
• Условные обозначения


• Как переименовать группу?

Так же как переименовать файл в проводнике, два одинарных клика по группе, в редакторе групп.

Советы:
• Во избежании тормозов при наличие антивируса (защитник Windows) не указывайте в качестве иконки сам exe-шник дистрибутива, используйте специальные наборы в dll-ке или отдельный файл иконки *.ico. (Файл iconapp.dll содержит довольно много иконок)
• Открыть описание программы в отдельном окне, можно кликнув средней кнопкой мыши по интересующему приложению. Или кликнув левой кнопкой мыши по статусной иконке.
• Пункт "Выйти из программы установки" не работает, если программа зафиксировала ошибки. В связи с чем, не рекомендую принудительно запускать оболочку в скрытом виде.

Скриншоты



Скачать с оф.сайта


О ложных срабатываниях антивирусов

В моих программах нет и никогда не было вредоносного кода. Всегда были, есть и будут ложные срабатывания антивирусов, в этом нет моей вины, виноваты кривые антивирусы.
Авторские программы не защищенные именной цифровой подписью находятся в повышенной зоне риска, для антивирусов это неизвестный потенциально опасный файл, антивирус не знает какие функции выполняет программа, в связи с чем, довольно часто, как правило эвристический анализ, детектирует угрозу. Если антивирус не нашел угрозу в файле, это еще не значит, что ее там нет, антивирусы детектируют только вершину айсберга из всего вредоносного кода. Как же быть? Нужно для себя решить, доверяете вы конкретному автору или нет.

Авторитет антивирусов и их роль в жизни разработчика


Это сообщение посчитали полезным следующие участники:
Показать/скрыть список поблагодаривших

Отправлено: 11:12, 05-08-2013

 

Аватара для Сrack

Ветеран


Сообщения: 1255
Благодарности: 436

Профиль | Цитировать


LonerD, Проделал эксперимент на другой ОС, нет переменной %commander_path%. Запускаю Тотал Коммандер с правами администратора, есть переменная %commander_path%.
В общем все понятно, MInstAll изначально запускается с правами администратора, Тотал нет.
Т.к. у MInstAll больше прав, Тотал не может ему передать переменные, подобная ситуация с перетаскиванием файлов из проводника запущенного с обычными правами.
Тут два варианта решения: понизить права для MInstAll или повысить для Тотал Коммандера. Первый сразу отпадает.
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:46, 02-06-2014 | #531



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 13
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Сrack:
Тут два варианта решения: понизить права для MInstAll или повысить для Тотал Коммандера. Первый сразу отпадает. »
А может просто добавить %Commander_Path% в глобальный список системных переменных (при условии, что TotalCommander находится в каком-то постоянном месте) или, при запуске с флешки, запускать Commander батником, в котором и прописать установку переменной %Commander_Path% на путь, существующий в данный момент.
Что-то типа этого:
set "Commander_Path=%~d0\TotalCommanderPortable"
start TotalCommanderPortable\totalcmd.exe

Последний раз редактировалось Plum, 10-06-2014 в 20:50.


Отправлено: 20:42, 10-06-2014 | #532


Аватара для Сrack

Ветеран


Сообщения: 1255
Благодарности: 436

Профиль | Цитировать


Цитата Plum:
А может просто добавить %Commander_Path% в глобальный список системных переменных »
Не известно для чего это нужно LonerD, если бы Total Commander был по постоянному пути, то переменная как бы и не нужна.

Отправлено: 20:49, 10-06-2014 | #533


Аватара для chymax3m

Пользователь


Сообщения: 73
Благодарности: 20

Профиль | Цитировать


%Commander_Path% - это внутренняя переменная Тотала, которую он интерпретирует как путь к папке с главным исполняющим файлом. Сдесь можно посмотреть Переменные, используемые в TC
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:47, 10-06-2014 | #534


Новый участник


Сообщения: 13
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Сrack:
Не известно для чего это нужно LonerD, если бы Total Commander был по постоянному пути, то переменная как бы и не нужна. »
Это просто попытка вставить свои 5 копеек по теме, как сделать переменную %commander_path% системной. Хотя тоже не совсем понимаю необходимость этого.
У меня из под Commandera и без этого все запускается без каких-то проблем, не смотря на то, что в моей сборке более 60-и программ (не считая плагинов и скриптов), которые одинаково работают как с харда, так и с флешки.

Отправлено: 02:31, 11-06-2014 | #535


Аватара для LonerD

Ветеран


Сообщения: 1462
Благодарности: 336

Профиль | Сайт | Отправить PM | Цитировать


Цитата Сrack:
Т.к. у MInstAll больше прав »
Вот она в чём петрушка...

Цитата Сrack:
Тут два варианта решения: понизить права для MInstAll или повысить для Тотал Коммандера. Первый сразу отпадает. »
Почему так категорично? Что не так в первом варианте? Попробовал - на первый взгляд работает.

Цитата Сrack:
Не известно для чего это нужно LonerD »
Если вкратце - у меня в Тотале джентельменский набор программ "всё своё ношу с собой". Разумеется, со временем выходят новые версии программ. MInstAll предположительно должен выступать оболочкой для запуска скриптов обновления программ, можно выбрать и запустить по очереди несколько скриптов-обновлений. Разумеется, в силу соблюдения портативности - всё лежит внутри каталога Тотала и соответственно связано с внутренними переменными.

Сrack
Я правильно понимаю, что в MInstAll нет таймера (как с WIP и BSPI)? Хотелось бы, чтобы при запуске программы если ничего не трогать - то процесс установки компонентов, выбранных по умолчанию, запускался бы автоматически по истечении определённого промежутка времени. В контексте автоматизации это очень актуально - например, запуск установки программ после установки или перезагрузки системы...

Отправлено: 02:50, 15-06-2014 | #536


Аватара для Сrack

Ветеран


Сообщения: 1255
Благодарности: 436

Профиль | Цитировать


Цитата LonerD:
Почему так категорично? Что не так в первом варианте? Попробовал - на первый взгляд работает. »
Как реализовали? Категорично, потому, что повышение прав в оболочки реализовано с помощью манифеста, то есть выбор прав задается до компиляции приложения, опционального выбора прав не предусмотрено.

Цитата LonerD:
Я правильно понимаю, что в MInstAll нет таймера (как с WIP и BSPI)? Хотелось бы, чтобы при запуске программы если ничего не трогать - то процесс установки компонентов, выбранных по умолчанию, запускался бы автоматически по истечении определённого промежутка времени. »
Как нет? А так:
Код: Выделить весь код
MInst.exe "{Patch}\profiles\Software.ini" /t 20
Через 20 секунд запустится автоматическая установка приложений из профиля Software.ini, что бы не ждать таймер, можно нажать "Отменить" и тут же "Выполнить".
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:32, 15-06-2014 | #537


Аватара для LonerD

Ветеран


Сообщения: 1462
Благодарности: 336

Профиль | Сайт | Отправить PM | Цитировать


Цитата Сrack:
Как реализовали? »
Попробовал самый простой вариант - в манифесте прописал asInvoker. На первый взгляд переменные видятся, всё запускается и отрабатывает...
Других рабочих способов пока не знаю. Пробовал запустить от имени пользователя с помощью PsExec - не запускается совсем.

Цитата Сrack:
Через 20 секунд запустится автоматическая установка »
Спасибо.

Отправлено: 19:32, 16-06-2014 | #538


Аватара для Refer

Новый участник


Сообщения: 4
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день!
Сейчас путь к приложению имеет вид типа {Patch}\software\antivirus\avg\avg_free_x86_all_2014_4577a7359.exe

А возможно ли реализовать возможность чтобы путь к приложению имел вид типа
{Patch}\software\antivirus\avg\avg_free_x86_all_2014_*.exe

Это было бы удобнее, так как постоянно выходят обновления программ, и ручками править пути в каждом пункте - утомительно.

Отправлено: 07:58, 19-06-2014 | #539


Аватара для Сrack

Ветеран


Сообщения: 1255
Благодарности: 436

Профиль | Цитировать


Цитата Refer:
А возможно ли реализовать возможность чтобы путь к приложению имел вид типа
{Patch}\software\antivirus\avg\avg_free_x86_all_2014_*.exe »
Думаю, так не получится.

Цитата Refer:
Это было бы удобнее, так как постоянно выходят обновления программ, и ручками править пути в каждом пункте - утомительно. »
Я в таких случаях переименовываю инсталлятор, так что бы не содержал версию, например так avg_free_x86.exe, при скачивании новой версии просто заменяю существующий файл. Но все равно приходится править версию в профиле.

Отправлено: 10:29, 19-06-2014 | #540



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » MInstAll - Мастер автоустановки приложений

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] GPI v2.5 - автоматическая установка приложений opel431 Автоматическая установка приложений 824 16-05-2022 20:38
Мастер установки RIS NecRORex Автоматическая установка Windows 2000/XP/2003 1 14-07-2011 15:38
Мастер Настройки Windows после установки kaZilla Автоматическая установка Windows 2000/XP/2003 0 06-08-2009 00:11
Службы - мастер установки принтеров не видит сеть WChek Microsoft Windows 2000/XP 2 25-09-2007 17:39
[решено] Мастер установки оборудования Sasha_b Microsoft Windows NT/2000/2003 3 13-06-2007 17:09




 
Переход