Вопрос

У меня есть базовый проект Installshield MSI.Этот проект использует загрузчик Installshield для установки нескольких предварительных условий установки.Все объединено и сжато внутри одного exe-файла (Setup.exe).У меня есть одно предварительное условие, для выполнения которого необходимо знать полный путь к файлу.Доступно ли какое-либо свойство для поиска этого пути?

Или другое решение.Мы используем Installshield 2008, и на данный момент у нас не так много шансов на обновление.Мне нужно установить SQL Server 2008, который зависит от установщика Windows 4.5.Installshield 2008 не поддерживает WinInstaller 4.5, поэтому я создал для него предварительные условия для WinXP и Vista.У меня WinXP работает корректно.

Однако Windows Vista, распространяемый для Windows установщик 4.5 представляет собой файл .msu и должен быть выполнен через wsua.exe.Я создал небольшое приложение, которое просто принимает параметры командной строки и запускается wusa.exe с параметрами для установки распространяемого установщика Windows.Однако wusa.exe требуется полный путь к распространяемому.Есть ли способ найти путь к тому месту, куда setup.exe извлекли файлы?

Или есть способ добавить поддержку установщика Windows 4.5 в Installshield 2008, сомневаюсь в этом, но это было бы проще всего

Это было полезно?

Решение

Для вашего альтернативного подхода с IS2008 вы должны быть в состоянии сделать это в вашем вспомогательном exe-файле.Предполагая, что вы используете C ++, вы можете вызвать GetModuleFileName(), чтобы найти местоположение вашего запущенного exe-файла (другие языки должны где-то предоставлять подобную функциональность).Поскольку все файлы предварительного условия будут извлечены в одну и ту же папку, вы можете использовать это, чтобы также определить полный путь к файлу .msu.

Обновление обеспечит вам прямую поддержку (а также включенные предварительные требования для установщика Windows 4.5) как IS2009 и более поздние предварительные условия, оболочка выполняет свою цель, поддерживая файлы .msu изначально.IS2009 и более поздние версии также поддерживают обязательное свойство командной строки, которое вы могли бы использовать для поиска необходимых файлов;смотрите на Примечания к выпуску InstallShield 2009 и найдите ISPREREQDIR.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top