- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C#使用FTP实现客户端程序自动更新
最近做的一个项目中需要用到客户端自动更新功能,最初的想法是利用ClickOnce技术来完成,但在实践中发现根本行不能,原因如下:1)项目应用到了DevExpress控件包,用ClickOnce发布的自动更新程序,客户在安装时报在GAC中找不到控件dll的错。2)ClickOnce安装无法实现根据用户安装时录入的参数(比如数据库服务器名、数据库用户名和密码等)来动态修改配置文件的功能。3)最后一下其实不重要了,就是ClickOnce无法实现用户自定义安装文件夹。? 最后决定放弃使用ClickOnce,使用ftp方式进行,实现思路如下:用户启动程序时,先运行update.exe,该文件会自动比较本地配置文件和ftp服务器上配置文件的异同,会自动下载上次更新后变化的文件以及新加入的文件。(因为都是基本配置文件,所以开发了一个配置文件生成工具,用户只需要选择根目录后,就会自动生成配置文件。)文件下载结束后,再启动实际的客户端程序。
1using System;
2using System.Collections.Generic;
3using System.Diagnostics;
4using System.IO;
5using System.Net;
6using System.Threading;
7using System.Windows.Forms;
8
9namespace Update
10{
11 /**//// summary
12 /// Description:
13 /// Author: ZhangRongHua
14 /// Create DateTime: 2009-6-21 12:25
15 /// UpdateHistory:
16 /// /summary
17 public partial class frmUpdate : Form
18 {
19 Fields#region Fields
20
21 private const string CONFIGFILE = update.xml;
22 private const string UPDATEDIR = PMS;
23 private string appPath = Application.StartupPath;
24 private ListErrorInfo errorList = new ListErrorInfo();
25 private string locFile = String.Concat(Application.StartupPath, \\, CONFIGFILE);
26 private string tmpUpdateFile = TmpUpdate.xml;
27 private Liststring updateList;
28 private string updateTmpPath = string.Concat(Path.GetTempPath(), \\, UPDATEDIR);
29 private string url = String.Empty;
30
31 private FTP ftp = null;
32
33 #endregion
34
35 Delegates#region Delegates
36
37 public delegate void AsycDownLoadFile(string srcFile, string destFile, int i);
38
39 public delegate void ExecuteUpdateFiles(string srcPath, string destPath);
40
41 public delegate void UpdateComplete();
42
43 public delegate void UpdateUI(int i, string message);
44
45 #endregion
46
47 public event UpdateComplete OnUpdateComplete;
48
49
您可能关注的文档
- 2012高一英语人教版必修一 unit5 grammar 公开课课件.ppt
- ATMU晓星5050客户培训资料.ppt
- arco公司New+TDS+Course顶驱教材.ppt
- DX23-130E3发动机电控培训资料.ppt
- PT课件 水资源管理.ppt
- 奥施康定病例分享-马学真 (1).ppt
- SMT贴装元件工艺控制.ppt
- DC漫画和漫威漫画的介绍.ppt
- 拜耳法生产氧化铝.ppt
- 奔驰Smart汽车福建自驾活动策划方案.ppt
- 2024年广东省连山壮族瑶族自治县施工员之设备安装施工基础知识考试通关秘籍题库及答案(有一套).docx
- 2024年广西壮族自治区北流市施工员之设备安装施工基础知识考试必刷200题通关秘籍题库加解析答案.docx
- 广东省广州市黄埔区2023-2024学年九年级上学期期末语文试题(解析版).pdf
- 广东省深圳市宝安区2022-2023学年高二上学期期末调研测试英语试题.pdf
- 旅游业发展规划实施情况中期总结评估报告.docx
- 福建厦门华侨中学2023-2024学年中考四模英语试题含答案.pdf
- 2023-2024年山西省壶关县施工员之设备安装施工基础知识考试必背200题真题标准卷.docx
- 2024年高中优秀学生经验交流发言稿(二篇).pdf
- 2022-2023学年人教新起点版英语四年级上册期末测试卷含答案.pdf
- 2023年-2024年一级建造师之一建矿业工程实务通关提分题库(考点梳理).pdf
最近下载
- IEC 61730-1 2023 必威体育精装版版中文标准.doc
- 论融资管理中存在问题与对策以格力电器为例_.docx
- 配置管理程序(ISO20000-1:2018).docx VIP
- 德国柏曼年品牌策划.ppt
- 《内科护理》4第四节 糖尿病病人的护理 教学课件.ppt VIP
- 云南白药股份有限公司财务报表分析.doc VIP
- APPROACHES AND METHODS IN LANGUAGE TEACHING教师专业发展.pdf
- 生鲜农产品冷链物流配送中心选址研究——以西安市为例.docx
- 陕西专升本英语3500词汇与高频词组.pdf VIP
- 2025年海南省公务员省考《行测》真题(含答案).pdf VIP
文档评论(0)