На днях я спрашивал на Вотсоуэвере как поставить под 2003-м Виндоусом приложение, которое требует XP. К сожалению, предложенные там решения (подписать в реестре другую версию) не сработали, и поэтому вместо того, чтобы обманывать инсталлятор, я решил зайти с другой стороны: отучить его проверять версию Винды вовсе. Это оказалось совсем не сложно.
Начну с того, что мой инсталлятор был EXE-файлом, который встречал меня словами о том, что он распаковывает MSI-файл, а уже после того, как распакованный MSI запускался, он ругался на то, что Виндоус у меня не XP.
Как нетрудно догадаться, MSI можно выловить в C:\Documents & Settings\
Теперь нам понадобится 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 |
Я эту строчку тупо удалил, перезапустил инсталлятор, и прога встала как миленькая.