Не так давно я получил новую работу, работая над инструментом, созданным компанией для облегчения жизни людей при работе с AWR.
Я успешно сделал несколько исправлений и улучшений, которые мне удалось распространить через установщики HotFix (просто перезаписать уже существующие файлы).
Мое последнее изменение/дополнение к инструменту требует, чтобы я создал полный установщик для инструмента. Этот конкретный инструмент всегда устанавливает 2 версии: текущую/новую и предыдущую/старую, чтобы обеспечить пользователям более плавный переход. Я никогда раньше не занимался установкой, поэтому я учусь на ходу.
Я смог создать установщик, используя предыдущий проект installshield, просто обновив/добавив/удалив файлы и папки. Это отлично работает, когда на компьютере не установлена версия инструмента, а в местах установки нет файлов / папок какой-либо его версии.
Я посмотрел в Интернете и обнаружил, что для создания установщика, который будет устанавливаться поверх предыдущей версии, мне нужно будет сделать серьезное обновление с помощью installshield, что я и сделал после прочтения этого. Теперь установщик успешно устанавливает старую версию, он успешно размещает новые файлы и папки на своих местах, но всегда оставляет одну конкретную пустую папку, ту, что для версии 1.1.1.
Это не казалось проблемой, пока я не понял, что .exe не удалось изменить файл .ini, который необходимо изменить, чтобы сообщить AWR, где искать сценарии. Я просмотрел код .exe и после нескольких тестов, запустив его в одиночку, я понял, что проблема не в .exe, он выполняет свою работу правильно. Проведя множество тестов, я обнаружил, что пока существуют эти пустые папки, файлы .ini нельзя изменить. Я понятия не имею, почему, поскольку файл .ini в значительной степени является файлом .txt, и нет смысла иметь какую-то зависимость от папки 1.1.1.
Итак, моя проблема - одна из двух: либо мне нужно найти способ убедиться, что обновление удалит эти папки 1.1.1, либо найти способ изменить файлы .ini с теми папками, которые все еще существуют. Я посмотрел в Интернете, и каждое решение требует, чтобы я/пользователь что-то делал вручную, и меня просят заставить установщик просто работать при использовании. Они просят меня сделать так, чтобы установщик позаботился обо всем, и пользователь не должен был ничего делать, кроме запуска установщика.
Поскольку установщик работает правильно, пока этих папок нет, я решил, что лучше всего убедиться, что установщик удалит их, но я застрял и не знаю, что делать дальше.
Спасибо за любые советы и помощь, которую вы можете предоставить в этом вопросе.