Я пошел бы для номера два, так как намного легче читать. Но я все еще хотел бы соответствовать пустым строкам, таким образом, я буду использовать:
/".*?"/
Ответ Боба Арсона в этой ветке :
Да, это поведение Апплет "Установка и удаление программ". Так всегда удаляет пакеты MSI в базовом режиме после подсказки. Единственное, что ты можно сделать, это установить ARPNOREMOVE, чтобы пользователю использовать режим обслуживания - и выберите параметр "Удалить" в вашем пользовательский интерфейс обслуживания.
Посмотрите раздел реестра для своего продукта в HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall. Посмотрите на значение «Удалить» и посмотрите, дает ли настройка то, что вы хотите.
Я почти уверен, что в MSI есть свойство для этого, если это решит вашу проблему, я просто не могу вспомнить его сразу моей головы. Однако поиск в MSI строки, найденной в реестре, должен помочь вам разобраться в этом.
Вы не можете сделать это изначально с помощью MSI. Для удаления вам нужно будет обратиться к вспомогательному / внешнему пользовательскому интерфейсу. Другие ответы на этот вопрос указывают в правильном направлении.