| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > InstallShield создание инсталлятора |
| Автор: iampsd 17.9.2014, 18:14 |
| Добрый день! Нужна помощь по InstallShield Мной создан инсталлятор на InstallShield 2012 Spring. Он предназначен для установки нового модуля в уже развернутую систему. Для этого ему необходимо определить путь к установленной системе на ПК пользователя и заменить значение системной переменной INSTALLDIR на это значение. Первоначально этой переменной при формировании инсталлятора было задано значение по умолчанию. Для определения пути и подстановки его была написана функция на на InstallScript, которая содержит следующее function GetPath(hMSI) NUMBER nRes,nType; STRING sDir; begin ….. (считывание пути в переменную sDir) …… INSTALLDIR=sDir; End; Все это работало несколько лет на разных OS от Windows XP до Windows 7 (32 и 64). Но вот недавно у одного пользователя (Windows 8 Enterprise) на виртуальной машине не сработало. Вставил отладочную печать и оказалось, что не срабатывает оператор INSTALLDIR=sDir; Попробовал использовать функцию CopyBytes, не помогло, значение INSTALLDIR не меняется. Но если явно написать в скрипте INSTALLDIR="C:\\test"; То это работает. Поставил у себя Windows 8 Enterprise, все работает нормально. Есть другой пользователь под Windows 8 правда Profesional у него тоже все нормально. Больше пользователей под 8 нет. Поэтому не могу понять это глюк конкретного ПК либо есть какая-то специфика Windows 8. Может быть кто то сталкивался с чем то подобным? |
| Автор: iampsd 18.9.2014, 09:27 | ||
Да |