1
我有一個安裝程序,其中一個對話框上有ListBox和Add/Remove按鈕。 ListBox的項目添加並刪除通過我的CA.Wix:將列表框中的值保存到配置文件
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表時它是空的。由於InsertTemporary修改模式,我會將其隱藏起來。插入模式給我「執行期間功能失敗,數據庫:表更新失敗。」錯誤。