Installshield: удаление не работает

Я создал установщик с помощью Installshield 2011. Я могу установить с его помощью программное обеспечение и также могу удалить его из интерфейса «Программы и компоненты».

Но если приложение уже установлено, и я снова нажимаю на установщик, появляются экраны, в которых говорится, что оно будет удалено, а удаление выполнено. Но удаления на самом деле не происходит.

У меня есть событие Remove ALL для диалогового окна Remove, а в таблице Remove у меня есть все файлы, которые необходимо удалить, перечисленные в режиме установки 2.

Не уверен, в чем проблема ... особенно, потому что я могу правильно удалить, когда это будет сделано из «Программы и компоненты».

Есть предложения / советы?


comment
Вы используете MSI Basic или Installscript MSI?   -  person Stein Åsmul    schedule 29.04.2015
comment
@ SteinÅsmul: Я использую базовый MSI   -  person Omi    schedule 29.04.2015
comment
Я не уверен, что вы используете базовый MSI. Это может быть MSI-файл Installscript - и с ним довольно сложно иметь дело при отладке, и, как правило, он полон проблем.   -  person Stein Åsmul    schedule 04.05.2015
comment
@ SteinÅsmul: на панели инструментов написано Basic MSI. В разделе «Настройки проекта» ›Тип указано« Базовый MSI ». Однако я вижу, что используются некоторые скрипты.   -  person Omi    schedule 04.05.2015


Ответы (2)


Полезно создать правильный подробный файл журнала, прежде чем пытаться слишком много теоретизировать по этому поводу. Замените пути в соответствии с вашими требованиями:

   msiexec.exe /x "C:\Test.msi" /L*V! "C:\msilog.log"

Пояснение к параметрам командной строки:

/x = run uninstallation sequence
/L*V! "C:\Temp\msilog.log"= verbose logging, flush directly to log file without buffer

Вы действительно вносили какие-либо изменения в это диалоговое окно удаления или оно стандартное? А почему вы добавили файлы в таблицу RemoveFile? Или это произошло автоматически? Обычно нет необходимости добавлять файлы в таблицу RemoveFile, если они не созданы вашим приложением и вы не хотите, чтобы они удалялись при удалении (обычно в профиле пользователя).

При этом я только что ответил на вопрос несколько дней назад, касающийся разницы в запуске удаления в автоматическом режиме по сравнению с интерактивным режимом. Прочтите следующий ответ (и связанный с ним вопрос): Удаление из панели управления отличается от удаления из .msi

ОБНОВЛЕНИЯ:

person Stein Åsmul    schedule 29.04.2015

Пара предложений по отладке в голове:

  1. Попробуйте создать новый проект Basic MSI и сравните детали в диалоговых окнах вручную в Installshield. Добавьте несколько тестовых файлов для вашего нового проекта и убедитесь, что он удаляется всеми способами (особенно способом, который не работает для вашей основной установки).

  2. Если ничего очевидного не видно или вам нужно более эффективное сравнение, используйте файл Wix dark.exe для декомпиляции скомпилированного MSI в формат Wix XML как для исходного, так и для нового проекта. Затем найдите Wix XML для диалогов и проверьте настройки.

Управляйте версиями вашего источника установки! Когда возникают проблемы, подобные этой, у вас есть гораздо лучшая возможность отладки - включая просто откат всей установки, пару ревизий и повторное выполнение того, что отсутствует в старом исходном коде.

Если вы можете заставить новую настройку работать, а старая не работает, не так уж сложно перенести все компоненты из старой настройки в новую. Я сделал это, чтобы перейти с Installscript MSI на базовый MSI, используя опцию «Экспорт в проект», доступную при щелчке правой кнопкой мыши по каждому компоненту (я считаю, что это была опция). На большую настройку у меня ушло всего пара часов. Затем он использует еще несколько часов, чтобы правильно проверить все настраиваемые действия.

Для справки: использование Wix с текстовыми исходными файлами значительно упрощает отладку и настоятельно рекомендуется: Установщик Windows и создание WiX. Как только вы привыкнете к нему, вы сможете сопоставить скорость создания установщика с помощью коммерческих инструментов.

Подробная информация о Wix, включая предложения по быстрому запуску: MSI vs nuget: какие пакеты лучше для непрерывной доставки?

Для получения дополнительной помощи по установщикам посетите: http://www.installsite.org/

person Stein Åsmul    schedule 04.05.2015