Подписка на блог

РСС — лучше всего

Ещё есть автоматические трансляции в Тумблере и Же-же. Если что-то не работает, напишите мне: ilyabirman@ilyabirman.ru.

Отучаем инсталлятор проверять версию ОС

На днях я спрашивал на Вотсоуэвере как поставить под 2003-м Виндоусом приложение, которое требует XP. К сожалению, предложенные там решения (подписать в реестре другую версию) не сработали, и поэтому вместо того, чтобы обманывать инсталлятор, я решил зайти с другой стороны: отучить его проверять версию Винды вовсе. Это оказалось совсем не сложно.

Начну с того, что мой инсталлятор был EXE-файлом, который встречал меня словами о том, что он распаковывает MSI-файл, а уже после того, как распакованный MSI запускался, он ругался на то, что Виндоус у меня не XP.

Как нетрудно догадаться, MSI можно выловить в C:\Documents & Settings\<Your name here>\Local Settings\Temp. Попутно замечу, что «распакованный» из 25-мегабайтного дистрибутива файл оказался всего лишь 19-мегабайтным...

Теперь нам понадобится Orca MSI editor. Оказывается, MSI-файл представляет собой базу данных с какой-то кучей таблиц. Что там к чему — понять трудно, но моё внимание привлекла таблица LaunchConditions, в которой была всего одна строчка:

(Not Version9X=400) And (Not Version9X=410) And (Not Version9X=490) And (Not VersionNT=400) And (Not VersionNT=500) And (Not VersionNT=502) And (Not VersionNT=600)[ProductName] requires that your computer is running Windows XP

Я эту строчку тупо удалил, перезапустил инсталлятор, и прога встала как миленькая.
Подписаться на блог
Поделиться
Отправить
9 комментариев
Андрей Руденко
Ничего кроме «бедные виндузятники» опять сказать не могу :)
Юрко
Мда, эта строчка — то что называют «индийский код». Ужас-то какой.
Андрей Руденко
Юрко, а чем плоха эта строчка сама по себе?
Ilya RooT
Большое спасибо за эту прогу! Только пригодилась она мне для других целей. Дело в том, что сейчас многие игры используют как раз этот инсталлятор и занимают объем DVD9, т. е. двуслойной болванки, которые весьма дорогие. А с помощью Orca MSI editor можно отредактировать файл MSI, чтобы при установке сначала запрашивались одни, потом другие файлы, короче, разбить игру на две копеечные болванки DVD5.

Хотя, тезка, зная ваше отношение к пиратской продукции... :-)
Илья Бирман
А что с моим отношением к пиратской продукции?

Может, вы имели в виду моё отношение к играм? ;-)
planius
Гений! =)
Денис
!!Андрей Руденко 30 марта 2008, 16:13
Ничего кроме «бедные виндузятники» опять сказать не могу :) !!
А на других платформах всё ещё сложнее…
Игорь
Да, вот мне тоже стало интересно
Андрей Руденко, вы, извиняюсь, маковод? или линухоид?
И вдогонку — каким нужно обладать мышлением, чтобы из кривизны рук писателя инсталятора делать выводы о возможностях ОС?? Мне действительно интересно...
Андрей Руденко
Игорь, ну естественно маковод. Чтобы поставить что-то в линухе нужны куда большие извращения зачастую :)

А мышление тут не при чем, все дело в практике. А на практике оказывается, что «и так у них все». Этому на самом деле есть вполне объективные объяснения. Достаточно взглянуть на Xcode и посмотреть на чем ведется разработка ПО для Макоси, а потом сравнить с ситуацией в вин-мире. Поэтому и гадких утят в Макоси значительно меньше (именно в относительных цифрах). Так что это проблема не конкретного инсталятора, а именно ОС.
Константин
А Касперского так поставить можно на сервер?

Пользовательский интерфейс
Доступны два раздела
электронного учебника

Популярное