При попытке удалить наше приложение в разделе «Установка и удаление программ» появляется следующая ошибка, и приложение не может быть удалено:
Error
'mFileBagIDE.dll' не является допустимым коротким именем файла.
Любопытно, что вы получаете эту ошибку, только если оригинальный установочный DVD-диск отсутствует в приводе. Если DVD находится в приводе, деинсталляция работает отлично.
Вот настоящий кикер: мы не уловили эту ошибку до тех пор, пока наше приложение уже не было широко развернуто, и ситуации наших клиентов таковы, что, вероятно, у многих из них больше нет своих оригинальных DVD. Это означает, что установщик следующей версии (выполняющий серьезное обновление установщика Windows) завершится ошибкой, так как не может сначала удалить предыдущую версию.
Итак, мой вопрос двоякий:
- Что мы сделали, чтобы создать эту проблему, чтобы избежать ее в будущих выпусках?
- Есть ли способ сообщить нашему следующему установщику Windows, чтобы он проигнорировал эту ошибку и удалил предыдущую версию?
Наш текущий установщик (тот, который вызывает проблемы) был создан с использованием InstallAware. Скорее всего, мы переходим на WiX. Но решения на любой платформе (InstallAware, WiX, необработанные таблицы MSI) приветствуются!
ОБНОВЛЕНИЕ: У меня есть следующая строка в таблицах InstallExecuteSequence
и InstallUISequence
в моем MSI, что вполне может иметь значение, но я понятия не имею, что такое свойство SRCDIREX, или где это устанавливается.
| Action | Condition |
|---------------|--------------|
| ResolveSource | NOT SRCDIREX |