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

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) 编辑 收藏

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

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) 命令和开关的大小写是相同意思的,你可以用大写或者小写来下命令均可。

来源:weishaolin131083

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2011年3月13日
下一篇 2011年3月13日

相关推荐