一些数据库文件(如Access文件)在远程传输过程中可能由于文件比较大而影响传递效果。如果进行压缩以后再传递,会减少传递时间,避免意外的发生,同时也保证了传递效果。我们在压缩文件时,最常用的压缩工具为WinRar和Winzip,笔者在VB编程过程中利用WinRar工具来压缩数据库文件,并完成远程传输,十分方便,在此向大家介绍一下。用WinZip的方法类似。
一、Shell函数 Shell的语法:Shell(PathName[,WindowStyle])。 PathName 为必需参数。类型为String,它指出了要执行的程序名,以及任何需要的参数或命令行变量,也可以包括路径名。 WindowStyle为可选参数。Integer类型,指定在程序运行时窗口的样式。WindowStyle有以下这些值。 常量 值 描述 二、关于WinRar的用法 压缩:WINRAR A [-switches] [Files] [@File lists] 例如你想把try.mdb压缩到C盘下,可以WINRAR A C:\try.rar C:\try.mdb 解压缩:如果带目录解压缩 WINRAR X [-switches] [Files] [@File lists] [destionation folder\] 如果在当前目录解压缩,即解压缩时不写目录名 WINRAR E [-switches] [Files] [@File lists] [destionation folder\] 例如你想把try.rar解压缩到C盘下,可以WINRAR X C:\try.rar C:\try.mdb 三、一个例子 Private Sub Command1_Click() Dim Rarexe As String WINRAR执行文件的位置 Dim Source As String 压缩前的原始文件 Dim Target As String 压缩后的目标文件 Dim FileString as String Shell指令中的字符串 Dim Result As Long Rarexe="C:\program files\winrar\winrar" Source="C:\try.mdb" Target="C:\try.rar" FileString = rarexe & " a " & Target & " " & Source Result = Shell(FileString, vbHide) End Sub 解压的过程类似,按Command2可以把try.rar解压生成 try.mdb。在执行了上面的压缩过程后,可以删除文件try.mdb,来解压缩重新生成try.mdb。 Private Sub Command2_Click() Dim Rarexe As String WINRAR执行文件的位置 Dim Source As String 解压缩前的原始文件 Dim Target As String 解压缩后的目标文件 Dim FileString as String Shell指令中的字符串 Dim Result As Long Rarexe="C:\program files\winrar\winrar" Source="C:\try.rar" Target="C:\try.mdb" FileString = rarexe & " X " & Source & " " & Target Result = Shell(FileString, vbHide) End Sub 文件从一台计算机传输到另一台计算机前,应知道另一台计算机的名字,然后用FileCopy语句就可以了。假设要把压缩后try.rar传递到计算机名为"other"的共享目录"want"下。 Private Sub Command3_Click() Dim SourceFile, DestinationFile SourceFile ="C:\try.rar " 指定源文件名。 DestinationFile = "\\other\want\try.rar" 指定目的文件名。 FileCopy SourceFile, DestinationFile 将源文件的内容复制到目的文件中。 End Sub 怎么样,十分简单吧? |
|站长邮箱|小黑屋|手机版|Office中国/Access中国
( 粤ICP备10043721号-1 )
GMT+8, 2025-4-4 05:17 , Processed in 0.336583 second(s), 16 queries .
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.