// 根据已有的配置,填充InstanceList int FillInstanceList(out string strError) { strError = ""; this.listView_instance.Items.Clear(); int nErrorCount = 0; for (int i = 0; ; i++) { string strInstanceName = ""; string strDataDir = ""; string strCertificatSN = ""; string[] existing_urls = null; string strSerialNumber = ""; bool bRet = InstallHelper.GetInstanceInfo("dp2Library", i, out strInstanceName, out strDataDir, out existing_urls, out strCertificatSN, out strSerialNumber); if (bRet == false) break; ListViewItem item = new ListViewItem(); ListViewUtil.ChangeItemText(item, COLUMN_NAME, strInstanceName); ListViewUtil.ChangeItemText(item, COLUMN_DATADIR, strDataDir); ListViewUtil.ChangeItemText(item, COLUMN_BINDINGS, string.Join(";", existing_urls)); this.listView_instance.Items.Add(item); LineInfo info = new LineInfo(); item.Tag = info; info.CertificateSN = strCertificatSN; info.SerialNumber = strSerialNumber; // return: // -1 error // 0 file not found // 1 succeed int nRet = info.Build(strDataDir, out strError); if (nRet == -1) { ListViewUtil.ChangeItemText(item, COLUMN_ERRORINFO, strError); item.BackColor = Color.Red; item.ForeColor = Color.White; nErrorCount++; } } if (nErrorCount > 0) this.listView_instance.Columns[COLUMN_ERRORINFO].Width = 200; else this.listView_instance.Columns[COLUMN_ERRORINFO].Width = 0; return 0; }
void modify_instance_dlg_LoadXmlFileInfo(object sender, LoadXmlFileInfoEventArgs e) { Debug.Assert(String.IsNullOrEmpty(e.DataDir) == false, ""); string strError = ""; LineInfo info = new LineInfo(); // return: // -1 error // 0 file not found // 1 succeed int nRet = info.Build(e.DataDir, out strError); if (nRet == -1) { e.ErrorInfo = strError; return; } Debug.Assert(nRet == 1, ""); e.LineInfo = info; }