У меня есть установщик с кнопками ListBox и Add / Remove в одном из диалогов.Элементы в ListBox добавляют и удаляют через мои CA.
Microsoft.Deployment.WindowsInstaller.View listBoxView = session.Database.OpenView("select * from ListBox where Property = '" + listBoxProperty + "'");
listBoxView.Execute(null);
int count = 0;
while (listBoxView.Fetch() != null)
count++;
Record newListBoxRecord = new Record(4);
newListBoxRecord[1] = listBoxProperty;
newListBoxRecord[2] = ++count;
newListBoxRecord[3] = listItemValue;
newListBoxRecord[4] = listItemValue;
ICollection<ValidationErrorInfo> errors = listBoxView.ValidateNew(newListBoxRecord);
if (errors == null)
listBoxView.Modify(ViewModifyMode.InsertTemporary, newListBoxRecord);
Элементы успешно добавляются и удаляются, но позже мне нужно сохранить их в файле конфигурации приложения.Отложенное действие не имеет доступа к базе данных установщика, поэтому я использовал немедленное действие после InstallFinalize.Но когда я читаю таблицу ListBox, она пуста.Я полагаю, это происходит из-за режима модификации InsertTeorary.Режим вставки дает мне «Функция не выполнена во время выполнения. База данных: Ошибка обновления таблиц».ошибка.