【原】Winfrom的自动更新模块

最近公司做个WINFORM小东西,需要自动更新。我在CODEPROJECT上找了一个,在基础上做了些调整:

1.原版本是VB.NET,我转成了C#

2.将表现和逻辑分离,使得重写表现变得更方便。

 

废话少说,直接上源码.

 

http://files.cnblogs.com/Magicsky/MagicUpDate.rar

 

 

2009-8-3更新

1.错误提示更加友好

2.将下载进度窗体置于最前

 

http://files.cnblogs.com/Magicsky/MagicUpLoad.rar

转载于:https://www.cnblogs.com/Magicsky/archive/2009/06/29/1512967.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WinForm中实现自动更新功能的源码实现相对比较复杂,下面简单介绍一种实现方式。 首先,你需要准备一个可执行文件或者安装程序的更新文件,并将其上传至服务器上。 其次,你需要在WinForm中添加一个“检查更新”按钮或者在程序启动时自动检查更新。 在“检查更新”按钮的点击事件中,我们需要编写代码从服务器获取更新文件的版本信息,并与当前程序的版本进行比较。 下面是一个简单的示例代码: ```csharp private void btnCheckUpdate_Click(object sender, EventArgs e) { string serverVersion = GetServerVersion(); // 获取服务器上的版本号,可通过网络请求获取 if (!string.IsNullOrEmpty(serverVersion) && IsUpdateAvailable(serverVersion)) { if (MessageBox.Show("发现新版本,是否开始更新?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK) { DownloadAndInstallUpdate(); // 下载并安装更新文件 } } else { MessageBox.Show("当前已是最新版本!"); } } private string GetServerVersion() { // 从服务器获取更新文件的版本号,此处可使用网络请求获取 // 示例中使用了硬编码的方式,实际应该根据具体情况进行修改 string serverVersion = "1.0.1"; return serverVersion; } private bool IsUpdateAvailable(string serverVersion) { Version currentVersion = new Version(Application.ProductVersion); Version newVersion = new Version(serverVersion); return currentVersion.CompareTo(newVersion) < 0; } private void DownloadAndInstallUpdate() { // 下载并安装更新文件,具体方法可根据实际情况进行调整 // 示例中使用了MessageBox来模拟安装过程 MessageBox.Show("正在下载更新文件..."); MessageBox.Show("下载完成,正在安装更新文件..."); // 更新完成后,可以重启应用程序以应用更新 MessageBox.Show("安装完成,请重启应用程序以应用更新。"); Application.Restart(); } ``` 以上代码仅提供了一个简单的实现思路,实际应用中可能需要考虑更多的情况,比如网络是否可用、服务器响应时间等,需要根据具体需求进行修改和完善。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值