Показать полную графическую версию : MInstAll - Мастер автоустановки приложений
Можно ли запускать MInst.exe непосредственно, то есть без необходимости запуска AutoRun.exe ? »
Можно.
То есть зачем AutoRun.exe вообще? »
Только для удобства, что бы в корне диска не было лишних файлов, и не надо было заходить в папку с MInst.exe
Если это возможно, то можно ли тогда как-то переместить файл настроек minst.ini в другую папку (например в profiles) ? »
Файл настроек должен быть рядом с MInst.exe, переносить нельзя.
ostapukr
09-12-2014, 15:10
олько для удобства, что бы в корне диска не было лишних файлов, и не надо было заходить в папку с MInst.exe »
Чего ж он такой монстроподобнй? Прийдётся сделать из NSIS.
Файл настроек должен быть рядом с MInst.exe, переносить нельзя. »
Странно конечно, ну да Вам виднее.
Чего ж он такой монстроподобнй? »
Потому, что сделан в SFX-Macros.
habib2302
09-12-2014, 23:08
Что такое [GroupStatus] в профиле
Как убрать пункт "Выйти из программы установки"
Что такое [GroupStatus] в профиле »
Состояние группы свернута/развернута (в WinXP не поддерживается).
Как убрать пункт "Выйти из программы установки" »
Его нельзя убрать.
Хочу предложить, как мне кажется, дельную фичу.
Простой пример:
-группа вариантов установки MS Office 2013
-группа вариантов установки MS Office 2003http://s7.hostingkartinok.com/uploads/thumbs/2014/12/8cf4986d45b9d1bee3e8ffb0f80b0804.png (http://hostingkartinok.com/show-image.php?id=8cf4986d45b9d1bee3e8ffb0f80b0804)
Необходимо, чтобы выбор любого пункта из подгруппы MS Office 2013 снимал галочки со всей подгруппы MS Office 2003. И соответственно наоборот. Но при этом была возможность любой комбинации галочек в "своей" подгруппе.
Вводим в программу новое понятие "группа взаимосвязанных". В "группу взаимоисключающих" добавляем возможность указывать не только программу, но и "группа взаимосвязанных" (не обязательно).
Создаем "группу взаимосвязанных" с названием MS Office 2013 и включаем в нее все что относится к MS Office 2013.
Создаем "группу взаимосвязанных" с названием MS Office 2003 и включаем в нее все что относится к MS Office 2003.
Создаем "группу взаимоисключающих" с названием MS Office и включаем в нее группу MS Office 2013 и MS Office 2003 или если группами это сложно реализовать, то просто все программы офиса.
Вводим в программу понятие "игнорировать взаимоисключаемость группы взаимосвязанных".
Решение бредовое. Может нужно сделать что-то наподобие черных и белых списков. Программисту изнутри оно виднее как реализовать
Тут конечно вылезет дилемма какую форму должен принять пункт меню - галочку или радио, так как пункт одновременно будет являться исключающим и связующим фактором. Но как по мне "радио" - это свистелка.
К чему все это ? А к тому что MInstall позиционируется как программа для продвинутых юзверов и никак не для домохозяек. Предлагаемые мной, на первый взгляд не нужные сложности, значительно расширяют функционал программы, позволяя создавать сложносвязаное меню.
пс.
-вышеприведенный пример всего лишь пример. предложения по решению вопроса установки офиса каким то другим способом не нужны.
- поднимаемый мною вопрос возможно уже пробегал в топике, но прочитав по диагонали 92 страницы похожее не было найдено.
- вообще то вопрос можно решить и в текущем функционале путем создания кучки групп взаимоисключений каждого пункта mso2003 с каждым пунктом противоположной mso2013. и наоборот. но даже для такого небольшого списка в примере это будет очень громоздко.
Сrack,
Здравствуйте, возникла проблема с Антивирусом eset smart security. Когда нажимаю 2 раза на Антивирус чтоб за инсталлировать не идёт. Когда нажимаю правую кнопку Запустить установку (без ключей) идёт супер. Скажите пожалуйста как это исправить? Просто чтоб 2 раза нажал и инсталляция пошла чтоб обычная.
Сrack, малюсенький тапочек:
При наведении на кнопку "Выполнить" появляется правильная подсказка. Но если я вздумаю остановиться во время процесса установки, название кнопки изменится (правильно), а подсказка остается той же ("Выполнить все выбранные приложения"). Несоответствие однако... :)
и еще один. Переменная {p} не работает если в пути есть пробелы.
UPD/ Сори. Похоже уже исправлено.
Crack, добрый день!
Спасибо вам за этот замечательный софт! От всей души!
Имеется ряд вопросов и предложений улучшению:
1. Знаю, что вы очень редко меняете логику своего приложения, в основном фиксите баги, но было бы очень полезно, согласно посту пользователя yumi (http://forum.oszone.net/post-2442391-913.html), сделать фишку для группы установок. Допустим у меня имеется софтина SDL Trados, которая при установке требует ряд пререквизитов для дальнейшей нормальной установки и работы, хотелось бы видеть в новой версии возможность создания подгрупп, очень помогло бы. Скриншот актуальной ситуации:
http://s7.hostingkartinok.com/uploads/thumbs/2014/12/13e07849266f0ce038128c95393d6fe8.png (http://hostingkartinok.com/show-image.php?id=13e07849266f0ce038128c95393d6fe8)
В принципе, вы посоветуете использовать SFX-macros или еще что-то, но иногда бывает, что те или иные программы установлены в системе и хотелось бы видеть, что установлено и что еще предстоит установить. А так отметил одну группу софта и установка пошла, проигнорировав уже установленные и установив новые компоненты/программы
2. Хотел бы у вас уточнить, имеется ли возможность вставки сетевого пути в строчке "Путь к приложению", например: \\server\share$\path? Если нет, то внедрите, пожалуйста
3. Имеется ли возможность убрать загрузочное лого? Вернее их целых два прогружается: одно - бирюзое, другое - синее
4. Вы бы не могли бы выложить актуальный LNG-файл со всеми последними переменными? Скачал из шапки, но все переменные имеются, хочу перевести на англ., затем отправлю окончательную версию вам на почту
Еще раз благодарю за понимание и сотрудничество
arman29,
1. Не понятно, что вы хотите. Если вы хотите абстрактную группу, что бы при выборе одного приложения выбирались все из этой группы, не зависимо от реального их расположения, то мое мнение не изменилось, такого не будет. Если вы хотите выбирать сразу все приложения из реальной группы (как у вас на скриншоте) то есть функция в контекстном меню "Вкл./Выкл. выбор с группы" или клавишей Insert. Если вы хотите, что бы при установки вышей программы автоматически устанавливались нужные для нее компоненты, при этом только те, что еще не установленны, то рекомендую метод описанный в шапке темы "Выполнение целого профиля одним пунктом".
2. Имеется. Только не забудьте включить опцию "Копировать дистрибутив во временную папку".
3. Бирюзовый это AutoRun.exe, он только запускает MInst.exe, можете его удалить. Синий нельзя убрать.
4. Тот, что выложен на сайте, последняя версия.
Crack,
Согласно первому пункту, нашел немного другое решение, скачав вашу сборку. Вы визуально сделали подгруппы, поставив в пункте "Путь к приложению" знак "-"
Раз уж с подгруппами не получается, то хотел бы уточнить про пункт "Включать установку/Include": какой у него синтаксис, если захочу несколько значений туда вписать? Пробовал через ",", ";", брать значения в "{}", но увы... Или можно вписать лишь одно значение? Если одно, то не могли бы вы рассмотреть возможность увеличения данного значения? Читал ваши предыдущие комменты по поводу Include, но скажу вам одно, если вы увеличите данное поле до нескольких значений или больше, то облегчите жизнь многим сис. админам и инженерам-программистам
Также нашел небольшой баг (ну не знаю как его можно назвать в данном случае): в сборке "MInstAll v.21.11.2014 By Andreyonohov & Leha342" имеется плейер AIMP, который проверяется через GUID - "%ProgramFiles%\AIMP3\AIMP3.exe", а правильнее проверять его через "AIMP3", а если оба эти значения совместить в строке "Уникальный идентификатор (GUID)", то MInstAll не распознает установленное состояние. Просто не всегда люди устанавливают на системный диск данную программу, либо берут и копируют ее с другого компа и для порядка вещей кидают в Program Files/Program Files (x86). Привел для примера конкретную ситуацию, где несколько вариантов проверки GUID конфликтуют, т.е. данная строка позволяет совершать проверку по одному типу. Возможно ли организовать проверку нескольких типов: по GUID и пути одновременно?
MInstAll не позволяет правильно установить пакеты с расширением *.msp, а именно если одиночно запустить установку одного файла, то все нормально, а если идет установка EXE/MSI, затем MSP проскакивает, резко перейдя к EXE/MSI. Плюс еще установка, идущая перед MSP, устанавливается но не до конца и быстренько откатывается
Спасибо большое за ответы
arman29, В поле "Включать установку" можно указать только одно приложение. Эта тема уже обсуждалась. Во первых я против "скрытого" массового выбора без уведомления об этом пользователя; во вторых логика существенно усложняется и при определенных ситуациях (в зависимости от фантазии пользователя) возможно зацикливание кода в результате торможение и даже зависание; в третьих нет желания потом видеть негативные отзывы типа: программа глючит (самопроизвольно выбирает) или программа тормозит и зависает.
arman29, Проверка наличия установленных приложений создавалась с одной целью, проверить корректность установки, т.к. при массовой автоматической установки все ошибки и предупреждения как правило игнорируются (подавляются) оригинальными инсталляторами, бывает программа не устанавливается из-за отсутствия чего либо, из-за несовместимости с текущей системой, или просто ей чего то не понравилось. Так вот за каждый такой косяк, меня на работе премии лишают. Проверять можно либо через GUID либо по наличию файла, что то одно, при этом можно два GUID указать, этого более чем достаточно для поставленной задачи. Для поиска ранее установленных приложений нет универсального решения, слишком много вариантов, и GUID у разных версий разный и путь может быть другой.
Поддержки *.msp в программе нет, все незнакомые (не поддерживаемые) расширения открываются через ассоциированное приложение без ожидания завершения. Можно добавить поддержку, только сейчас на работе аврал.
А пока можно так:
http://jpegshare.net/thumbs/39/ed/39eda113114fdb1c9f90a10777bcd929.jpg (http://jpegshare.net/39/ed/39eda113114fdb1c9f90a10777bcd929.png.html)
Сrack, есть ли возможность выполнять приложения до установки списка? То есть при запуске установки выполняется определенное приложение, а потом начинается непосредственно установка по списку.
popt2t, добавить выполнение этого приложения самым первым по списка и не забыть поставить птицу на него. Если нужна перезагрузка после его исполнения - поставить галочку "Перезагрузить ОС". После нажатия кнопки "Выполнить" первым выполнится данное приложение, если нужно, комп перезагрузится, а затем начнут выполняться все последующие в порядке сортировки списка.
Я так запускаю некоторые нужные мне твики для нужных ОС, перезагружаюсь и вперёд! :)
popt2t, Непонятно что вы хотите, сделайте свой AutoRun.exe или вариант от samsobi.
arman29, В поле "Включать установку" можно указать только одно приложение. Эта тема уже обсуждалась. Во первых я против "скрытого" массового выбора без уведомления об этом пользователя; во вторых логика существенно усложняется и при определенных ситуациях (в зависимости от фантазии пользователя) возможно зацикливание кода в результате торможение и даже зависание; в третьих нет желания потом видеть негативные отзывы типа: программа глючит (самопроизвольно выбирает) или программа тормозит и зависает. »
Если честно сказать, то ваше приложение уже давно переплюнуло уровень "для чайников". Большинство людей, создающих сборки, более-менее опытны в этом деле, т.е. они умеют пользоваться BAT/VBS скриптами. Либо можно разделить ваш продукт: для чайников - Free-версия с ограниченным функционалом и кол-вом пунктов и платную версию. За счет платной версии у вас будет дополнительный заработок и в принципе ей будут пользоваться профессионалы своего дела, которые знают за что платят деньги
arman29, Проверка наличия установленных приложений создавалась с одной целью, проверить корректность установки, т.к. при массовой автоматической установки все ошибки и предупреждения как правило игнорируются (подавляются) оригинальными инсталляторами, бывает программа не устанавливается из-за отсутствия чего либо, из-за несовместимости с текущей системой, или просто ей чего то не понравилось. Так вот за каждый такой косяк, меня на работе премии лишают. Проверять можно либо через GUID либо по наличию файла, что то одно, при этом можно два GUID указать, этого более чем достаточно для поставленной задачи. Для поиска ранее установленных приложений нет универсального решения, слишком много вариантов, и GUID у разных версий разный и путь может быть другой. »
вы меня совершенно не поняли. я вас хотел информировать о том, что в строке "Уникальный идентификатор (GUID)" одновременно GUID и $path не работают
Поддержки *.msp в программе нет, все незнакомые (не поддерживаемые) расширения открываются через ассоциированное приложение без ожидания завершения. Можно добавить поддержку, только сейчас на работе аврал»
за временное решение отдельное спасибо
Нашел баг: при установке с сетевой шары BAT-файла с кодом (ТЗ в этой теме - http://forum.oszone.net/thread-292716.html), строчки начиная с "rem Installing Java x86/x64 v8.25" не хотят считываться, программа ругается, что файла "jre-8u25-windows-x64.exe/jre-8u25-windows-x86.exe" не существует и MInsAll тормозит. Выяснилось, что программа пытается их найти в папке %TEMP% и установить оттуда, а на самом деле они лежат там, где и скрипт. Если же данный скрипт запустить в локальной версии MInstAll либо отдельно запустить, то все пройдет как по маслу. Временное решение из этой ситуации нашел: поставил галочку напротив пункта "Копировать все файлы во временную папку". Хотя по идее скрипт должен отрабатываться вне зависимости расположения: то ли он будет локально, то ли на сетевой шаре
@ECHO OFF
REM Killing all processes and services
net stop JavaQuickStarterService
taskkill /F /IM iexplore.exe /T
taskkill /F /IM jqs.exe /T
taskkill /F /IM jucheck.exe /T
taskkill /F /IM javaw.exe /T
REM ============ Java Deletion ============
REM Сохранение в файл идентификаторов (GUID) установленных пакетов Java в формате установщика Windows Installer
SET Query=name like 'Java 7%%' OR name like 'Java(TM) 6%%' OR name like 'J2SE Runtime Environment%%' OR name like 'Java 2 Runtime Environment%%' OR name like 'Java Auto Updater%%'
wmic product where "%Query%" get IdentifyingNumber > "%TEMP%\delJava_1.txt"
REM Сохранение только GUID пакетов во второй файл
TYPE "%TEMP%\delJava_1.txt" | FINDSTR {........-....-....-....-............} > "%TEMP%\delJava_2.txt"
REM Цикл удаления пакетов
FOR /f "tokens=*" %%a IN (%TEMP%\delJava_2.txt) DO (msiexec /x %%a /qn /norestart)
REM Удаление временных файлов
IF EXIST "%TEMP%\delJava_1.txt" DEL "%TEMP%\delJava_1.txt"
IF EXIST "%TEMP%\delJava_2.txt" DEL "%TEMP%\delJava_2.txt"
rem Installing Java x86/x64 v8.25
IF EXIST "C:\Program Files (x86)" (
start /wait .\jre-8u25-windows-x64.exe /s /norestart
) ELSE (
start /wait .\jre-8u25-windows-x86.exe /s /norestart
)
EXIT
вы меня совершенно не поняли. я вас хотел информировать о том, что в строке "Уникальный идентификатор (GUID)" одновременно GUID и $path не работают »
Я в курсе, он и не должен работать.
Нашел баг: при установке с сетевой шары BAT-файла с кодом ...»
bat-файл не может правильно работать, если его запускать с сетевого диска, это не имеет отношения к MInstAll, все претензии к Microsoft. Как раз для таких ситуаций есть опция "Копировать дистрибутив во временную папку", это решит кучу проблем связанных с сетью. Я не буду перечислять все возможные сетевые проблемы, поверьте их много.
За счет платной версии у вас будет дополнительный заработок »
В России это не прокатит, собираюсь завязать с IT областью и уйти в таксисты, они реально зарабатывают.
Вы также можете
Pushd \\имя_сервера\путь
Запуск кода
POPD
EXIT
Сrack,
Перевел ваше приложение на англ. язык (см. приложение), но не все переменные есть в файле
В начале сидел и подбирал переменные, но так и не смог подобрать. Пожалуйста, заполните мне этот файл с недостающими переменными. Обозначил их как ";xxx=Лицензионное соглашение", где xxx - переменная
Еще не нашел, где встречаются вот эти переменные. Подскажи, пожалуйста, как они в русской версии звучат:
CancelEndTerminated=Cancel?
ApplicationTerminated=Application terminated.
Wait=Please wait
Load=load
Save=Save
NotOsSupport=Not OS support
[FormEditMenu]
Cut=Cut
Copy=Copy
Paste=Paste
EditKey=Edit key
EditInstaller=Edit Installer
Clear=Clear
Некоторые слова в русской версии написаны с ошибками, да и часто употребляются слова из разговорной речи ("Прилипать к краям экрана" вместо "Присоединять окно к границам экрана"), а также в лицензионном соглашении пунктуация немного хромает. Чуть позже вышлю список исправлений
А вообще вы не хотите сделать мультиязычную программу, где можно было бы интерфейс переключить с РУ на АНГЛ и наоборот?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.