
但可行
觉得拷贝无聊者请忽略
'代码定义了两个子程序一个解压一个压缩
.版本
2
.子程序
压缩_WinRAR_压缩,
文本型,
公开,
本命令需要安装WinRAR
.参数
被压缩的文件,
文本型,
数组,
文件和文件夹都可以
.参数
压缩到文件,
文本型,
,
全路径和rar\zip文件名
.参数
WinRAR地址,
文本型,
可空,
如果注册表内没有WinRAR的信息。但是安装了的。就需要写
例:C:\Program
Files\WinRAR\WinRAR.exe
.局部变量
易团俊,
整数型
.局部变量
被压缩信息,
文本型
易团俊
=
0
被压缩信息
=
“”
.如果真
(是否为空
(WinRAR地址))
WinRAR地址
=
取文本注册项
(#本地机器,
“SOFTWARE\Microsoft\Windows\CurrentVersion\App
Paths\WinRAR.exe\”,
)
.如果真结束
.如果真
(WinRAR地址
=
“”)
返回
(“找不到WinRAR目录”)
.如果真结束
.计次循环首
(取数组成员数
(被压缩的文件),
易团俊)
被压缩信息
=
被压缩信息
+
“
”
+
被压缩的文件
[易团俊]
.计次循环尾
()
运行
(WinRAR地址
+
“
a
-ep1
-scul
-r0
-iext
”
+
压缩到文件
+
被压缩信息,
真,
)
返回
(“”)
.子程序
压缩_WinRAR_解压,
文本型,
公开,
本命令需要安装WinRAR
.参数
压缩文件,
文本型,
,
全路径和rar\zip文件名
.参数
解压到文件夹,
文本型,
,
文件夹全路径
.参数
WinRAR地址,
文本型,
可空,
如果注册表内没有WinRAR的信息。但是安装了的。就需要写
例:C:\Program
Files\WinRAR\WinRAR.exe
.如果真
(是否为空
(WinRAR地址))
WinRAR地址
=
取文本注册项
(#本地机器,
“SOFTWARE\Microsoft\Windows\CurrentVersion\App
Paths\WinRAR.exe\”,
)
.如果真结束
.如果真
(WinRAR地址
=
“”)
返回
(“找不到WinRAR目录”)
.如果真结束
运行
(WinRAR地址
+
“
x
-iext
-ow
-er
”
+
压缩文件
+
“
”
+
解压到文件夹,
真,
)
返回
(“”)
WinRAR是目前网上非常流行和通用的压缩软件,全面支持zip和ace,支持多种格式的压缩文件,可以创建固定压缩,分卷压缩,自释放压缩等多种方式,可以选择不同的压缩比例,实现最大程度的减少占用体积。目前最新的版本是WinRAR 3.62 官方简体中文版。
软件大小:1038KB
软件语言:简体中文
软件类别:国外软件/共享版/压缩工具
运行环境:Win9x/Me/NT/2000/XP
主要特点和功能:
1.对 RAR 和 ZIP 的完全支持,支持 ARJ、CAB、LZH、ACE、TAR、GZ、UUE、BZ2、JAR、ISO 类型文件的解压;
2.支持分卷压缩功能,支持创建自解压文件,可以制作简单的安装程序,使用方便;
3.强大的压缩文件修复功能,最大限度恢复损坏的 rar 和 zip 压缩文件中的数据,如果设置了恢复记录,甚至可能完全恢复;
4.工业标准 AES 加密;
5.提供固实格式的压缩算法,在很大程度上增加类似文件或许到小文件的压缩率;
6.可以保存 NTFS 数据流和安全数据;
7.与资源管理器整合, *** 作简单快捷;
8.支持 Unicode 编码文件名,强大的常规、文本、多媒体和可执行文件压缩。
关于WinRAR的使用
一、WinRAR 的下载和安装
(1)从许多网站都可以下载这个软件,
(2)安装WinRAR 的安装十分简单,您只要双击下载后的压缩包,就会出现图1 的安装界面。
图1 设定目标文件夹
在图1 中您通过点“浏览”选择好安装路径后点“安装”就可以开始安装了。然后会出现图2 的选项。
图2 设置关联等
图2 中分三个部分,您在左边的“WinRAR关联文件”是让您将下面的格式的文件创建联系,如果您决定经常使用 WinRAR 的话,可以与所有格式的文件创建联系。如果您是偶然使用 WinRAR 的话,也可以酌情选择。右边的“界面”是选择 WinRAR 在 windows 中的位置。“外壳整合设置”是在右键菜单等处创建快捷。都做好选择后,点“确定”就会出现图3,点击“完成”成功安装。
图3 感谢和许可
二、使用 WinRAR 快速压缩和解压
WinRAR 支持在右键菜单中快速压缩和解压文件 *** 作十分简单。
(1)快速压缩
当您在文件上点右键的时候,您就会看见图4 中用圆圈标注的部分就是 WinRAR 在右键中创建的快捷键。
图4 右键菜单
想压缩文件的时候,在文件上点右键并选择“添加到档案文件”,这样就会出现图5,在图5 的最上部您可以看见6个选项,这里是选择“常规“时出现的界面。
图5 解压缩向导
(2)快速解压
当您在压缩文件上点右键后,会有图6中画圈的选项出现,您选择“释放文件”
图6 释放文件
选择“释放文件”后出现图7,在图7 的“目标路径”处选择出解压缩后的文件将被安排至的路径和名称。 没有什么问题,点击“确定”就可以解压了。
图7 解压缩选择
三、WinRAR 的主界面
其实对文件进行压缩和解压的 *** 作的话,在右键菜单中的功能就足以胜任了,一般不用在 WinRAR 的主界面中进行 *** 作,但是在主界面中又有一些额外的功能所以我们有必要对它进行了解,下面我们将对主界面中的每个按钮做一说明。
点击 WinRAR 的图标后出现的主界面如图8。
图8 压缩包
“添加”按钮就是我们已经熟悉的压缩按钮,当点击它的时候就会出现前面我们已经解释过的图5 的界面,相信您对此界面已经熟悉了,在此就不多说了。
当您在下面的窗口中选好一个具体的文件后,您点“查看”按钮就会显示文件中的内容代码等。
“删除”按钮的功能十分简单就是删除您选定的文件。
“修复”是允许您修复文件的一个功能。修复后的文件 WinRAR 会自动为它起名为 _reconst.rar,所以您只要在“被修复的压缩文件保存的文件夹”处为修复后的文件找好路径就可以了,当然您也可以自己为它起名。
“解压到”是将文件解压,点击它后出现的界面就是我们在前面解释过的图12,您一定会使用此功能了。
“测试”是允许您对选定的文件进行测试,它会告诉您是否有错误等测试结果。
当您在 WinRAR 的主界面中双击打开一个压缩包的时候,又会出现几个新的按钮,如图9。
图9 文件浏览
其中有“自解压格式”按钮,是将压缩文件转化为自解压可执行文件,“保护”是防止压缩包受以外的损害。“注释”是对压缩文件做一定的说明。“信息”是显示压缩文件的一些信息。
四、WinRAR 的卸载
卸载只要在控制面板---添加/删除程序---WinRAR 压缩文件管理器---添加/删除就可以了。
要先引入using Microsoft.Win32/// <summary>
/// 压缩
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
ArrayList arrFiles = new ArrayList()
//要打包两个文件和一个文件夹
arrFiles.Add(@"c:\abc.xls")
arrFiles.Add(@"d:\xyz.xls")
arrFiles.Add(@"e:\uvc")
//压缩文件存放路径
string savestr = @"c:\kugoo"
//压缩文件名
string name = "test.rar"
this.CompressFileForReportTable(arrFiles, savestr, name)
}
/// <summary>
/// 压缩文件
/// </summary>
/// <param name="sourceFilesPaths">要压缩的文件路径列表</param>
/// <param name="compressFileSavePath">压缩文件存放路径</param>
/// <param name="compressFileName">压缩文件名(全名)</param>
p lic void CompressFileForReportTable(ArrayList sourceFilesPaths, string compressFileSavePath, string compressFileName)
{
String the_rar
RegistryKey the_Reg
System.Object the_Obj
String the_Info
ProcessStartInfo the_StartInfo
Process the_Process
try
{
//使用注册表对象获取到WiNRar路径
the_Reg = Registry.ClassesRoot.OpenS Key(@"Applications\WinRAR.exe\Shell\Open\Command")
the_Obj = the_Reg.GetVal("")
the_rar = the_Obj.ToString()
the_Reg.Close()
the_rar = the_rar.S string(1, the_rar.Length - 7)
the_Info = " a" + compressFileName
foreach (object filePath in sourceFilesPaths)
{
the_Info += " " + filePath.ToString()//每个文件路径要与其它的空格隔开
}
the_StartInfo = new ProcessStartInfo()
the_StartInfo.FileName = the_rar
the_StartInfo.Arguments = the_Info
the_StartInfo.WindowStyle = ProcessWindowStyle.Normal//Hidden 隐藏样式
the_StartInfo.WorkingDirectory = compressFileSavePath//获取或设置要启动的进程的初始目录。(RAR存放路径)
the_Process = new Process()
the_Process.StartInfo = the_StartInfo
the_Process.Start()
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString())
}
}
/// <summary>
/// 解压缩指定的rar文件。
/// </summary>
/// <param name="rarFileToDecompress">rar文件(绝对路径)。</param>
/// <param name="directoryToSave">解压缩保存的目录。</param>
/// <param name="deleteRarFile">解压缩后删除rar文件。</param>
p lic void DecompressRAR(string rarFileToDecompress, string directoryToSave, bool deleteRarFile)
{
String the_rar
RegistryKey the_Reg
Object the_Obj
the_Reg = Registry.ClassesRoot.OpenS Key(@"Applications\WinRAR.exe\Shell\Open\Command")
the_Obj = the_Reg.GetVal("")
the_rar = the_Obj.ToString()
the_Reg.Close()
the_rar = the_rar.S string(1, the_rar.Length - 7)
string winrarExe = the_rar//需要在指定路径下放入winara.exe的可执行文件在安装目录下可以找到这个文件
if (new FileInfo(winrarExe).Exists)
{
//directoryToSave = CheckDirectoryName(directoryToSave)
try
{
Process p = new Process()
// 需要启动的程序名
p.StartInfo.FileName = winrarExe
// 参数
string arguments = @"x -inul -y -o+"
arguments += " " + rarFileToDecompress + " " + directoryToSave
p.StartInfo.Arguments = arguments
p.Start()//启动
while (!p.HasExited)
{
}
p.WaitForExit()
}
catch (Exception ee)
{
throw new Exception("压缩文件在解压缩的过程中出现了错误!")
}
if (deleteRarFile)
{
File.Delete(rarFileToDecompress)
}
}
else
{
throw new Exception("本机上缺少必须的Winrar.exe文件,不能完成相应 *** 作请联系管理员安装WinRar解压工具!")
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)