using System; using System.ComponentModel; using System.Windows.Forms; using Model; using QMAPP.WinForm.Common; namespace QMAPP.WinForm { public partial class FormSplash : Form { private BackgroundWorker _bgw; public FormSplash() { InitializeComponent(); _bgw = new BackgroundWorker { WorkerReportsProgress = true, }; _bgw.DoWork += _bgw_DoWork; _bgw.RunWorkerCompleted += _bgw_RunWorkerCompleted; _bgw.ProgressChanged += _bgw_ProgressChanged; } private void _bgw_ProgressChanged(object sender, ProgressChangedEventArgs e) { lblLog.Text = e.UserState.ToString(); } private void _bgw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { DialogResult = DialogResult.OK; } private void _bgw_DoWork(object sender, DoWorkEventArgs e) { try { // GlobalConfig.MainSetting = GlobalConfig.GetConfigValues(GlobalConfig.MainSettingFileName); _bgw.ReportProgress(25,"载入配置信息..."); global.UpdateSetting = GlobalConfig.GetConfigValues(GlobalConfig.UpdateFileName); _bgw.ReportProgress(75, "查找程序更新..."); var serverUrl = $"http://{global.UpdateSetting.更新服务器地址}:{global.UpdateSetting.更新服务器端口}/"; var updateXmlFileName = global.UpdateSetting.更新文件名; var updater = new AutoUpdater(); if (updater.CheckUpdateLoad(serverUrl, updateXmlFileName)) { Application.Exit(); } _bgw.ReportProgress(100, "载入基础数据..."); _bgw.ReportProgress(100, "开始启动程序..."); } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void FormLogin_Load(object sender, EventArgs e) { } private void FormSplash_Shown(object sender, EventArgs e) { _bgw.RunWorkerAsync(); } private void lbClose_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { Close(); } } }