Войти

Показать полную графическую версию : MInstAll - Мастер автоустановки приложений


Страниц : [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119

Сrack
05-08-2013, 11:12
Проект заморожен, автор удалил ссылки на программу - сообщение автора (http://forum.oszone.net/post-2905941-2264.html)
[hr]


http://jpegshare.net/images/fb/36/fb36fd63497868656edb523be0be25aa.png (http://jpegshare.net/)

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


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

Путь к иконке:
%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:
Для нескольких приложений, взаимно несовместимых, указываем одну и ту же группу несовместимости, в редакторе она называется "Группа взаимно исключаемых".
Название группы любое, но соответственно одно и то же для несовместимых приложений. Пункт "Выйти из программы установки" в группе взаимно исключаемых "End".
Include:
При выборе приложения, оно может автоматически выбирать для установки другое приложение, в поле "Включать установку" указываем название приложения которое включится автоматически.


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

http://checkdevice.narod.ru/screenshot_files/profileconf.png

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

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

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


Профиль будет сохранятся в Unicode если установить параметр Unicode=1

[MInst]
...
Unicode=1
...



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

Проверка через реестр с помощью GUID:
Для включения проверки, нужно указать правильные GUID и версию, в таком виде, в котором она прописывается в реестре, а не так, как автоматом определилась при добавлении приложения.
Определить без ошибочно можно с помощью Check Device
http://jpegshare.net/thumbs/a5/16/a51605594dc440f8d20f4d82f2ee1e73.jpg (http://jpegshare.net/a5/16/a51605594dc440f8d20f4d82f2ee1e73.png.html)
Можно указывать два GUID разделив их знаком ";" (Больше двух GUID указывать нельзя)
Например когда приложение двух разрядное, и у каждой разрядности свой GUID.
http://jpegshare.net/images/70/88/708894e2dff48973b61e70c49348e24f.png

Версию можно сократить, отбрасывая цифры после точки. Например если в реестре версия 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-битная версия.


При необходимости, можно отключить редирект, указав ключ /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"



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


<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 (http://forum.oszone.net/thread-264841.html),
или любым другим вашим способом и добавляем его в MInstAll. Для разрядности есть специальная переменная.


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


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

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

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

http://jpegshare.net/images/f3/8e/f38e38703e129c8bc71326c967e0982a.png


Смотри описание "Несколько команд для одного пункта"

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

http://checkdevice.narod.ru/Screen/infominst.png

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

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


http://jpegshare.net/images/ed/81/ed8162fe6cdc9d1b21cfd2b7f45a844d.png (http://jpegshare.net/) http://jpegshare.net/images/95/53/955311a4bd522d620dfec1f1297b6aa2.png (http://jpegshare.net/)

Скачать с оф.сайта (http://checkdevice.narod.ru/index/download/0-2) :(



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

Авторитет антивирусов и их роль в жизни разработчика (http://habrahabr.ru/post/122508/)

vitbomba
05-08-2013, 14:25
Сrack, Идея хорошая, но можно было прикрутить ключи запуска как GPInst, та и иконку самой проги можно изменить. По поводу проблем что описывал в той программе с ключом с кавычками так здесь всё нормально. Идея с профилями понравилась, та и то что в самой проге можно сразу отредактировать и проверить.

Сrack
05-08-2013, 14:40
можно было прикрутить ключи запуска как GPInst »
Какие именно ключи нужны?
Есть ключ /t 20 запуск установки через 20 сек.

иконку самой проги можно изменить »
Есть хорошие варианты иконок? Присылайте!

vitbomba
05-08-2013, 15:17
Сrack, когда выбираешь ключ установки так там несколько вариантов тихой установки под разные инсталяторы. Не правильно перед этим выразился.

Сrack
05-08-2013, 19:34
Идея хорошая, но можно было прикрутить ключи запуска как GPInst »

Версия: 1.0.0.8
• Добавил список ключей для инсталяторов. (файл MInst.Key)

Подойдет файл Key.lst от GPInst, только его надо переименовать в MInst.Key

vitbomba
05-08-2013, 21:10
Сrack, а что там у вас за Яндекс
Group=4
Name=Yandex
Hint=
Patch=e:\загрузка\yandex.exe
Key=
CopyToTemp=0
Checked=0

Сrack
05-08-2013, 21:16
vitbomba, Удалите, это я когда тестил не удалил.

vitbomba
05-08-2013, 21:22
Сrack, та я понял :)

Painkiller
05-08-2013, 21:42
Само радует что конфиг в ini =) Сrack , на чем пишите ?

Painkiller
05-08-2013, 21:52
Painkiller, Delphi »
Еще один Делфист )) Я тоже хотел написать такую утилиту с конфигом ini , да потом бросил. Всем не возможно заниматься .
Ps нужно больше место для описание приложений

Painkiller
06-08-2013, 01:17
Сrack, есть предложения . Можно добавить чтобы в список групп можно было добавлять через программу, а не лазить в файл и дописывать группы нужные и так же ключи .
Очень удобно что утилита представляет собой и установщик программ и редактор )) Жду новых версий ))

Сrack
06-08-2013, 10:18
Можно добавить чтобы в список групп можно было добавлять через программу, а не лазить в файл и дописывать группы нужные »
Наверное можно, только там некоторые заморочки с сортировкой, на это уйдет какое то время. Быстрее будет реализовать добавление в конец, то есть добавленная группа будет последней. Лично для меня важна последовательность групп (последовательность установки) т.к. я в основном использую не для установки софта, а для автоматизации настройки ОС, теста железа и отката (sysprep).

и так же ключи . »
C этим будет проще.

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

Сrack
06-08-2013, 21:44
Обновление, версия 1.0.0.9
• Доработан справочник ключей

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

Двойной клик по ключу - добавление ключа и закрытие справочника
Кнопка "Добавить ключ" - добавляет ключ без закрытия справочника, что бы можно было добавить еще ключ
С другими кнопками должно быть все понятно.

Painkiller
06-08-2013, 22:24
Сrack, все ок, но есть маленькие нюансы . Очень не нравиться реализация описания программы . Лучше сделай как у GPInst.

Сrack
06-08-2013, 22:45
Painkiller, Я еще не определился, как сделать описание программ. В плане интерфейса еще будут изменения.

Painkiller
06-08-2013, 22:47
Painkiller, Я еще не определился, как сделать описание программ. В плане интерфейса еще будут изменения. »
Ну ясно. Я уже боялся что это окончательный вариант для описания =)

Сrack
08-08-2013, 00:20
Обновление, версия 1.0.0.10
• Изменен способ вывода описания программ
• Изменен дизайн главного окна

Painkiller
08-08-2013, 13:34
Сrack, нужно в описании авто переносы текста на новую строку сделать, а то получается ерунда. Видимо забыл ? =)
ps хорошая реализация сортировки )) Почему бы не сделать такую же сортировку для групп и ключей ?

Сrack
08-08-2013, 15:45
нужно в описании авто переносы текста на новую строку сделать, а то получается ерунда »
В смысле? Что не так?

хорошая реализация сортировки )) Почему бы не сделать такую же сортировку для групп и ключей ? »
В будущих версиях будет сортировка перетаскиванием.

Painkiller
08-08-2013, 15:48
В смысле? Что не так? »
http://s004.radikal.ru/i206/1308/7b/6a65cabfbfba.png




© OSzone.net 2001-2012