这是个检测更新的组件(CheckUpdate.cs),我在主程序界面上加入了这个组件,程序启动时可以自动检测更新,我想再加个Timer控件让它定时检测更新,该怎么加呢?namespace AutoUpDate
{
public partial class CheckUpdate : Component
{
private System.Threading.Thread backgroundThread;
private delegate void UpdateVersionDelegate(Version version); public CheckUpdate()
{
InitializeComponent();
} public CheckUpdate(IContainer container)
{
container.Add(this);
Check();
InitializeComponent();
} public void Check()
{
backgroundThread = new Thread(new ThreadStart(UpdateThread));
backgroundThread.IsBackground = true;
backgroundThread.Start();
} public void UpdateVersion(Version version)
{
Version vCurrent = System.Reflection.Assembly.GetEntryAssembly().GetName().Version;
if (version > vCurrent)
{
System.Windows.Forms.DialogResult dialogResult = System.Windows.Forms.MessageBox.Show("邮件地址薄有更新: " + version.ToString() + ",是否更新", "更新", System.Windows.Forms.MessageBoxButtons.YesNo); if (dialogResult == System.Windows.Forms.DialogResult.Yes)
{
System.Diagnostics.Process.Start("AutoUpDate.exe");
System.Windows.Forms.Application.Exit();
}
} backgroundThread.Abort();
} private void UpdateThread()
{
//获取服务器上的版本
Config config = new Config();
Version vConfig = config.GetVersion();
UpdateVersion(vConfig);
}
}
}
{
public partial class CheckUpdate : Component
{
private System.Threading.Thread backgroundThread;
private delegate void UpdateVersionDelegate(Version version); public CheckUpdate()
{
InitializeComponent();
} public CheckUpdate(IContainer container)
{
container.Add(this);
Check();
InitializeComponent();
} public void Check()
{
backgroundThread = new Thread(new ThreadStart(UpdateThread));
backgroundThread.IsBackground = true;
backgroundThread.Start();
} public void UpdateVersion(Version version)
{
Version vCurrent = System.Reflection.Assembly.GetEntryAssembly().GetName().Version;
if (version > vCurrent)
{
System.Windows.Forms.DialogResult dialogResult = System.Windows.Forms.MessageBox.Show("邮件地址薄有更新: " + version.ToString() + ",是否更新", "更新", System.Windows.Forms.MessageBoxButtons.YesNo); if (dialogResult == System.Windows.Forms.DialogResult.Yes)
{
System.Diagnostics.Process.Start("AutoUpDate.exe");
System.Windows.Forms.Application.Exit();
}
} backgroundThread.Abort();
} private void UpdateThread()
{
//获取服务器上的版本
Config config = new Config();
Version vConfig = config.GetVersion();
UpdateVersion(vConfig);
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货