Показать полную графическую версию : MSI - инсталляторы
Habetdin, да спасибо ;) сам сразу не заметил ...
specialist
26-07-2010, 21:13
desperate, пробуй universal extractor
народ, как отучить msi от setup в этом драйвере
http://download.microsoft.com/download/8/E/A/8EA10D39-D943-48B1-BA07-DBC78125AFEE/IPx64_1049_8.0.225.0.exe - ? (нужно распаковать)
Не на какие ключи не реагирует пишет без setup не запущусь и все тут...
народ, как отучить msi от setup в этом драйвере
http://download.microsoft.com/downlo..._8.0.225.0.exe - ? (нужно распаковать)
Не на какие ключи не реагирует пишет без setup не запущусь и все тут... »
Вот держи поправленный драйвер IPx64_8.0.225.0_fixed.rar (7.7 МБ) http://rghost.ru/2831227/private/7ff0ad5020a08e7b74ab4b0433847c36
Jonik-Mnimonik
16-12-2010, 15:03
У меня есть msi-пакет. Каким способом можно добавить в него скрипт vbs или батник, чтобы они выполнились при установки msi? Можно ли это сделать вообще?
Мне необходимо чтобы при установки msi, изменились права на конкретную ветку реестру и права на папку, можно ли в msi указать такую информацию?
Может можно с помощью программы InstED изменить какие-нибуть атрибуты добавляемых веток реестра или файлов?
GreyBear
16-12-2010, 16:55
У меня есть msi-пакет. Каким способом можно добавить в него скрипт vbs или батник, чтобы они выполнились при установки msi? Можно ли это сделать вообще?
Мне необходимо чтобы при установки msi, изменились права на конкретную ветку реестру и права на папку, можно ли в msi указать такую информацию?
Может можно с помощью программы InstED изменить какие-нибуть атрибуты добавляемых веток реестра или файлов? »
как добавить файл со скриптом в пакет не знаю, но с помощью InstED можно создать файл трансформации mst, но нужно знать какие таблицы править...
у меня сходный вопрос, при тихой установке нужно установить компонент, который ставится при полном интерфейсе через диалоги, как это сделать?
никто не подскажет где бы взять полный список и описания всех таблиц msi? пол интернета перерыл и везде не то или совсем мало инфы.
kotkovets
31-10-2011, 22:17
никто не подскажет где бы взять полный список и описания всех таблиц msi? »
Можно здесь глянуть, поиск гугла рулит, я по вашему вопросу нашел этот ресурс, хотя им давно пользуюсь.
http://www.rsdn.ru/article/install/wininstaller.xml
Ребята, посоветуйте, я с msi никогда не имел дело и про админ.точку впервые слышу.
Movie_Edit_Pro_MX_Premium.exe /x D:\zzzz
распаковывается...
D:\zzzz\product\Video_deluxe_MX_Premium_en-GB_SetupRes\...
D:\zzzz\product\_0mz215s.cab
D:\zzzz\product\_1se8nrk.cab
D:\zzzz\product\_z8c76gt.cab
...
D:\zzzz\product\Video_deluxe_MX_Premium_en-GB_cabinfo.txt | _o9bsm72.cab = _ContentFiles|Program\all итд..
D:\zzzz\product\Video_deluxe_MX_Premium_en-GB_setup.exe
D:\zzzz\product\Video_deluxe_MX_Premium_en-GB_setup.ms_
D:\zzzz\product\Video_deluxe_MX_Premium_en-GB_SetupInfo.ini | ProductCode={341CF6D3-A072-4CBC-AE86-FBF94872ABD5} итп.
Всё распаковывается и открывается, устанавливается с ключём /s
Мне хотелось бы перепаковать, выкинуть по возможности лишнее, и изменить путь установки.
С чего начать и что попытаться предпринять? Самое главное хочу изменить директорию установки.
И меня интересует, что за файлы создаются после установки _msi_keyfile_xxxxxxxxxxx , для чего они нужны и как это работает?
http://rootonly.ru/content/использование-ключей-и-свойств-установщика-windows
http://msdn.microsoft.com/en-us/library/windows/desktop/aa370557(v=vs.85).aspx
из всего понял что надо как-то пропатчить msi файл, который простым hex редактором вряд ли удасться,
интересно поглядеть каковы возможности Orca.exe...
TARGETDIR авторы пакета судя по всему прикрыли нехоршие человеки.
SuperOrca - скачал, теперь бы научиться :(
Я здесь совет прочитал, к которому отнёсся недостаточно серьёзно, посмотреть строку в Process Explorer, потому что налету уловить процесс это надо ловкость рук иметь, хотя я знал что сама прога себя регистрирует. Однако, оказалось не так уж сложно,
я действительно получил эту ценную команду: Videodeluxe.exe /register /user 175
И её результат:
%AppData%\...\installation.ini:
[Support]
requestID=xR-86775-22004-44676-80196-18344-69624
supportID=xE-86073-49852-04169-28779-11800-67374
Ну всё теперь пора за InnoSetup браться :)
Есть exe шник, но хочется поставть прогу через групповую политику в домене, как создать MSI пакет из EXEшника ?!
Простите если тут постоянно это спрашивают, я нз как искать :)
garanov,
Например, с помощью EMCO MSI Package Builder (http://emcosoftware.com/msi-package-builder)
DanilTV@twitter
29-05-2012, 09:43
Добрый день. У меня есть несколько пакетов msi которые устанавливаются через local update publisher. Проблема в том, что перед установкой пакета adobe flash надо закрыть браузер. Необходимо вывести об этом сообщение пользователю. Может быть есть стандартный ключ в msi указав который я смогу это сделать?
Сейчас читаю по параметрам для установки msi, пока ничего такого не нашёл. Подскажите куда смотреть.
В случае если пакет ставится из под system, то вывести сообщение, для пользователя, средствами msi не получиться.
Пользуемся, спецально написаной, для этого утилитой.
dimagromyko
29-05-2012, 16:09
DanilTV@twitter, смотри в CustomAction.
Можно либо использовать команду net send, либо использовать любой другой скрипт или программу через CustomAction для этих целей (vbscript и т.д.).
Штатного средства - нет.
garanov, в общем случае - никак.
Обычно все утилиты, которые используются для этих целей работают следующим образом:
1. Создается пустая черновая MSI (можно взять пример из MSDN).
2. Создается CustomAction, который запускает твой exe-шник с ключами "тихой" установки (ключи нужно знать).
3. Опционально, исходный exe-шник и сопутствующие файлы сворачиваются во внутренний или внешний cub-файл, чтобы создать видимость, что ты имеешь дело таки с msi и только с ним :)
На что крайне важно обратить внимание:
Когда используешь сторонние утилиты (оссобенно бесплатные) для "конвертации" exe->msi обязательно проверь ProductCode, PackageCode а так же GUID-ы всех компонентов. Поскольку очень часто такие "конверторы" обращают все ехе-шники в msi с одинаковыми ProductCode, PackageCode и GUID-ами всех компонентов, что приводит к такому забавному глюку, как установка более одного "сконвертированного" msi приводит либо к удалению ранее установленных пакетов либо к ошибкам установки.
Еще один вариант сделать все быстро (портабельно и сразу в мси) - использовать онлайн серви CAMYO: online.cameyo.com/login.aspx?ReturnUrl=%2fsubmit.aspx
(требуется бесплатная регистрация, тебя интересует раздел "Online Packager")
Всем доброго времени суток!
DanilTV@twitter, я в своем предыдущем посте от 29-05-2012 был несколько категоричен в своем высказывании и хотел бы исправиться :).
Как писал dimagromyko в данном случае надо будет работь с таблицами CustomAction и InstallExecuteSequence.
Ниже пример создания экшена:
таблица CustomAction :
в поле Action именуем "экшен"
в поле Type будет сумма флагов определющая тип нашего экшена. В примере будет 102, т.к мы будем запускать vbs скрипт, для вывода сообщения пользователю прямо из MSI, сам скрипт будет хранится в текстовом виде в поле Target. Также инсталятор будет ожидать окончания выполнения скрипта.
в поле Source все оставляем без изменений - с параметром <null>
в поле Target копируем текст скрипта (при помощи Import Text File из контекстного меню в Orca или Multi-Line Editor в InstEd <- Shift+Entr)
Dim Msg, Style, Title, Response, MyString
Msg = "Please. Close your web-browser!"
Style = vbOKOnly + vbExclamation + vbDefaultButton1
Title = "System message"
Response = MsgBox(Msg, Style, Title)
таблица InstallExecuteSequence:
в поле Action линк на наш экшен таблице CustomAction
в поле Condition условие NOT Installed, кастом екшен будет запускаться толко при инсталяции
в поле Sequence порядок выполнение экшена в процессе инсталяции, быбираем любое свободное значение в диапазоне между InstallInitialize и InstallFinalize. Т.к нам надо вывести сообщение, как можно раньше, то тулим наш экшен как можно ближе к InstallInitialize.
Все!
Еще один пример - Запуск исполняемого файла во время установки
Цель: закрыть некое приложение, которое мешает нашей инсталяции|деинсталяции. Пусть будет Internet Explorer
Действующие лица: таблицы CustomAction и InstallExecuteSequence + таблица Directory и стандартная виндовая утилита taskkill
В таблице CustomAction делаем новую запись и даем имя нашему экшину. Поле Type приймет значение 3170
Если расписать 3170 по подробней, то это будет выглядеть так 3170=34+64+1024+2048
Флаг 34 -экшен будет запускать ехе, где ворк директори описывается в поле Source и таблице Directory, а путь к исполняемому файлу и аргументы задаются в Target ;
Флаг 64 -инсталятор будет ждать окончания выполнения экшина;
Флаг 1024 -.....;
Флаг 2048 -экшин будет выполняться в системном контексте;
Значение SystemFolder в поле Source соответсвует Windows\System32, что освобождает нас от необходимости явно задавать путь к taskkill.exe в поле Target.
И наконец в Target мы задаем команду на исполнение cmd /c "taskkill /im iexplore.exe /f /t"
В таблице InstallExecuteSequence все манипуляции аналогичны предыдущему примеру.
Но! Следует учесть и помнить следущее:
1. Что бы экшин выплнялся, как при инсталяции, так при удалении - оставте поле Condition пустым!
2. Для запуска кастом экшина только во время удаления в поле Condition укажите REMOVE.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.