一段软件更新程序(使用WinRar压缩包) - C#探索者 - 博客园

    技术2022-05-20  42

    http://www.cnblogs.com/mossan/category/49076.html

     

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.Net; using System.Diagnostics;

    namespace UpDate {     public partial class Form1 : Form     {         private WebClient update = new WebClient();

            public Form1()         {             InitializeComponent();         }

            private void Form1_Load(object sender, EventArgs e)         {             string URL = @"http://files.cnblogs.com/mossan/Zhongwen.rar";             int n = URL.LastIndexOf('/');             string fileName = URL.Substring(n + 1, URL.Length - n - 1);

                if (!(Directory.Exists(Application.StartupPath + "//update")))             {                 Directory.CreateDirectory(Application.StartupPath + "//update");             }

                try { update.DownloadFile(URL, Application.StartupPath + "//update//" + fileName); }             catch (WebException ex) { MessageBox.Show(ex.Message, "Error"); }

                try             {                 Process UnWinrar = new Process();                 UnWinrar.StartInfo.FileName = "WinRAR.exe";                 UnWinrar.StartInfo.Arguments = "e -o+ /"" + Application.StartupPath + "//update//" + fileName + "/"" + " /"" + Application.StartupPath + "//update" + "/"";                 UnWinrar.Start();                 MessageBox.Show("解压缩完成!");                 File.Copy(Application.StartupPath + "//update//" + "Zhongwen.exe", Application.StartupPath + "//Zhongwen.exe", true);

                    Process ProZhongwen = new Process();                 ProZhongwen.StartInfo.FileName = Application.StartupPath + "//Zhongwen.exe";                 ProZhongwen.Start();             }             catch (Exception ex) { MessageBox.Show(ex.Message); }             this.Close();         }     } }

    分类: 网络通信, C#

    绿色通道:好文要顶关注我收藏该文与我联系

    Mossan 关注 - 0 粉丝 - 3

    关注博主

    1

    0

    (请您对文章做出评价)

    « 上一篇:拼音化汉语专用记事本 1.1(2010-11-24更新) » 下一篇:局域网管理工具“网络管理员”1.5 正式版(2007-5-28更新)

    posted on 2007-04-19 17:44 Mossan 阅读(3966) 评论(20) 编辑 收藏

    评论:

    1371542

    #1楼 2007-04-19 18:00 | 臭石头

    好东西 回复 引用 查看

    #2楼 2007-04-19 18:13 | vista[未注册用户]

    这个用WinRAR比较有意思。。。。 如果用户的机器上没有WinRAR咋办? 回复 引用

    #3楼 2007-04-19 18:18 | watson hua

    UnWinrar.StartInfo.Arguments = "e -o+ /"" + Application.StartupPath + "//update//" + fileName + "/"" + " /"" + Application.StartupPath + "//update" + "/""; 不知道那位仁兄知道常用工具的参数设置。 回复 引用 查看

    #4楼 2007-04-19 18:25 | 李海洋[未注册用户]

    爱任何人 回复 引用

    #5楼 2007-04-19 18:30 | 李海洋[未注册用户]

    我爱你 回复 引用

    #6楼 2007-04-19 18:57 | 帝之晓[未注册用户]

    好像在更新之前应该先判断下是不是需要更新吧 回复 引用

    #7楼 2007-04-19 18:58 | iCaca

    从命令行也可以运行 WinRAR 命令,常规的命令行语法描述如下: WinRAR <命令> -<开关1> -<开关N> <压缩文件> <文件...> <@列表文件...> <解压路径/> 命令 要 WinRAR 运行的字符组合代表功能 开关 切换操作指定类型,压缩强度,压缩文件类型,等等的定义。 压缩文件 要处理的压缩文件名。 文件 要处理的文件名。 列表文件 列表文件是包含要处理文件名称的纯文本。文件名应该在第一卷启动。可以在列表文件中使用//字符后添加注释。例如,你可以包含两列字符串创建 backup.lst:c:/work/doc/*.txt //备份文本文档 c:/work/image/*.bmp //备份图片c:/work/misc并接着运行: winrar a backup @backup.lst你可以在命令行中同时指定普通的文件名和列表文件名。 解压路径 只与命令 e 和 x ,搭配使用。指出解压文件添加的位置。如果文件夹不存在时,会自动创建。 注意事项 a) 如果未指定 文件 或是 列表文件 时,WinRAR 将会以缺省的 *.* 运行全部的文件; b) 如果未指定压缩文件扩展名时,WinRAR 将会使用在 压缩配置 中选定的默认压缩文件格式。但你可以指定 .RAR 或 .ZIP 扩展名来替换它们; c) 在命令行所输入的开关会替换相同的配置设置值; d) 在命令 c、e、s、t、rr、k 和 x 可在压缩文件名中使用通配符。如此可以用单个的命令来进行超过一个以上的压缩文件,除此之外,如果你指定 -r 开关于这些命令时,它们将会搜索在子文件夹中的压缩文件; e) 某些命令和开关只应用在 RAR 压缩文件,有些则在 RAR 和 ZIP 都可使用,而某些则可应用在全部的压缩文件格式。这一些都得看压缩文件格式所提供的特性而定; f) 命令和开关的大小写是相同意思的,你可以用大写或者小写来下命令均可。


    最新回复(0)