资源简介
实现c#开发的winform程序根据程序版本号是否需要更新程序,启动更新程序从服务器下载新版本程序并解压覆盖主程序,运行主程序。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.IO;
using COMMON;
using Update;
namespace autoUpdate
{
public partial class Form1 : Form
{
[DllImport(“zipfile.dll“)]
public static extern int MyZip_ExtractFileAll(string zipfile string pathname);
public Form1()
{
InitializeComponent();
//清除之前下载来的rar文件
if (File.Exists(Application.StartupPath + “\\Update_autoUpdate.zip“))
{
try
{
File.Delete(Application.StartupPath + “\\Update_autoUpdate.zip“);
}
catch (Exception)
{
}
}
if (Directory.Exists(Application.StartupPath + “\\autoupload“))
{
try
{
Directory.Delete(Application.StartupPath + “\\autoupload“ true);
}
catch (Exception)
{
}
}
//检查服务端是否有新版本程序
checkUpdate();
timer1.Enabled = true;
}
SoftUpdate app = new SoftUpdate(Application.ExecutablePath “ExceTransforCsv“);
public void checkUpdate()
{
app.UpdateFinish += new UpdateState(app_UpdateFinish);
try
{
if (app.IsUpdate)
{
app.Update();
}
else
{
MessageBox.Show(“未检测到新版本!“);
Application.Exit();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
void app_UpdateFinish()
{
//解压下载后的文件
string path = app.FinalZipName;
if (File.Exists(path))
{
//后改的 先解压滤波zip植入ini然后再重新压缩
string dirEcgPath = Application.StartupPath + “\\“ + “autoupload“;
if (!Directory.Exists(dirEcgPath))
{
Directory.CreateDirectory(dirEcgPath);
}
//开始解压压缩包
MyZip_ExtractFileAll(path dirEcgPath);
try
{
//复制新文件替换旧文件
DirectoryInfo TheFolder = new DirectoryInfo(dirEcgPath);
foreach (FileInfo NextFile in TheFolder.GetFiles())
{
File.Copy(NextFile.FullName Application.StartupPath + “\\program\\“ + NextFile.Name true);
}
Directory.Delete(dirEcgPath true);
File.Delete(path);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4096 2018-12-17 10:20 COMMON\bin\Debug\COMMON.dll
文件 7680 2018-12-17 10:20 COMMON\bin\Debug\COMMON.pdb
文件 2306 2018-07-17 16:53 COMMON\COMMON.csproj
文件 201 2018-07-17 16:45 COMMON\CommonMethod.cs
文件 456 2018-12-17 10:20 COMMON\obj\Debug\COMMON.csproj.FileListAbsolute.txt
文件 4096 2018-12-17 10:20 COMMON\obj\Debug\COMMON.dll
文件 7680 2018-12-17 10:20 COMMON\obj\Debug\COMMON.pdb
文件 5674 2018-12-26 14:43 COMMON\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 1344 2018-07-17 16:44 COMMON\Properties\AssemblyInfo.cs
文件 4096 2018-12-17 10:20 ExceTransforCsv\bin\Debug\COMMON.dll
文件 7680 2018-12-17 10:20 ExceTransforCsv\bin\Debug\COMMON.pdb
文件 17408 2018-12-18 15:25 ExceTransforCsv\bin\Debug\ExceTransforCsv.exe
文件 40448 2018-12-18 15:25 ExceTransforCsv\bin\Debug\ExceTransforCsv.pdb
文件 11600 2018-12-26 14:43 ExceTransforCsv\bin\Debug\ExceTransforCsv.vshost.exe
文件 490 2018-04-12 07:35 ExceTransforCsv\bin\Debug\ExceTransforCsv.vshost.exe.manifest
文件 200704 2017-04-30 14:19 ExceTransforCsv\bin\Debug\ICSharpCode.SharpZipLib.dll
文件 1624064 2013-03-06 07:17 ExceTransforCsv\bin\Debug\NPOI.dll
文件 387072 2013-03-06 07:17 ExceTransforCsv\bin\Debug\NPOI.OOxm
文件 79872 2013-03-06 07:17 ExceTransforCsv\bin\Debug\NPOI.Openxm
文件 1316864 2013-03-06 07:17 ExceTransforCsv\bin\Debug\NPOI.Openxm
文件 2145032 2013-03-06 07:13 ExceTransforCsv\bin\Debug\NPOI.xm
文件 8192 2018-12-17 10:20 ExceTransforCsv\bin\Debug\Update.dll
文件 19968 2018-12-17 10:20 ExceTransforCsv\bin\Debug\Update.pdb
文件 10240 2018-07-17 16:53 ExceTransforCsv\bin\Debug\程序运行顺序\autoUpdate.exe
文件 22016 2018-07-17 16:53 ExceTransforCsv\bin\Debug\程序运行顺序\autoUpdate.pdb
文件 11600 2018-07-17 16:41 ExceTransforCsv\bin\Debug\程序运行顺序\autoUpdate.vshost.exe
文件 490 2018-04-12 07:35 ExceTransforCsv\bin\Debug\程序运行顺序\autoUpdate.vshost.exe.manifest
文件 4096 2018-07-17 16:53 ExceTransforCsv\bin\Debug\程序运行顺序\COMMON.dll
文件 7680 2018-07-17 16:53 ExceTransforCsv\bin\Debug\程序运行顺序\COMMON.pdb
文件 4096 2018-07-17 16:53 ExceTransforCsv\bin\Debug\程序运行顺序\program\COMMON.dll
............此处省略116个文件信息
相关资源
- C#入门经典第五版源代码(随书源码)
- c# gdi+ 地图绘制
- c# 鼠标在窗体PictureBox上的十字光标
- 基于C#的AE二次开发基础篇和提高篇有
- 3个C#与GPRS进行通信的.rar
- C# Canon EDSDK附加 C# Nikon SDK
- C# web版 成绩管理系统asp、.net
- C#咖啡厅收费系统源码
- C#学生选课系统b/s模式
- 《Visual C#.NET案例开发集锦》
- 基于C#学生管理系统
- C#_雷电游戏全部源码 经典
- C#聊天机器人
- asp.net做的新闻发布系统
- C#实现各大厂商PLC通讯
- 家庭视频监控系统 C#
- 毕业论文--基于ASP.NET的个人博客开发
- C#网络围棋(搜集的资料汇总)
- c#可视化的银行家算法
- C#高性能大容量SOCKET并发完成端口IO
- vs2010 asp.net项目中集成ckeditor和ckfind
- 数据结构动画演示系统c#DataStructure.
- C# - 大漠多线程控制台
- 基于.net c#的新闻管理系统
- c#网上销售系统
- C#教务管理系统(附带数据库)
- C# asp.net宠物商店管理系统带完整数据
- (C#三层架构)酒店管理系统
- 888 C#聊天机器人--含源代码
- 企业人事管理系统c#.net SQL 含数据库
评论
共有 条评论