久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨(dú)角獸企業(yè)100強(qiáng)
全世界各行各業(yè)聯(lián)合起來(lái),internet一定要實(shí)現(xiàn)!

VB中利用 Winrar 進(jìn)行文件壓縮

2004-02-13 eNet&Ciweek

  一些數(shù)據(jù)庫(kù)文件(如Access文件)在遠(yuǎn)程傳輸過(guò)程中可能由于文件比較大而影響傳遞效果。如果進(jìn)行壓縮以后再傳遞,會(huì)減少傳遞時(shí)間,避免意外的發(fā)生,同時(shí)也保證了傳遞效果。我們?cè)趬嚎s文件時(shí),最常用的壓縮工具為WinRar和Winzip,筆者在VB編程過(guò)程中利用WinRar工具來(lái)壓縮數(shù)據(jù)庫(kù)文件,并完成遠(yuǎn)程傳輸,十分方便,在此向大家介紹一下。用WinZip的方法類(lèi)似?! ?

  一、Shell函數(shù)

    Shell函數(shù)是VB中的內(nèi)部函數(shù),它負(fù)責(zé)執(zhí)行一個(gè)可執(zhí)行文件,返回一個(gè)Variant(Double),如果成功的話(huà),代表這個(gè)程序的進(jìn)程ID,若不成功,則會(huì)返回0。

  Shell的語(yǔ)法:Shell(PathName[,WindowStyle])。

  PathName 為必需參數(shù)。類(lèi)型為String,它指出了要執(zhí)行的程序名,以及任何需要的參數(shù)或命令行變量,也可以包括路徑名。

  WindowStyle為可選參數(shù)。Integer類(lèi)型,指定在程序運(yùn)行時(shí)窗口的樣式。WindowStyle有以下這些值。   

  常量值描述

  VbHide 0 窗口被隱藏,且焦點(diǎn)會(huì)移到隱式窗口。

  VbNormalFocus 1 窗口具有焦點(diǎn),且會(huì)還原到它原來(lái)的大小和位置。

  VbMinimizedFocus 2 窗口會(huì)以一個(gè)具有焦點(diǎn)的圖標(biāo)來(lái)顯示(缺省值)。

  VbMaximizedFocus 3 窗口是一個(gè)具有焦點(diǎn)的最大化窗口。

  VbNormalNoFocus 4 窗口會(huì)被還原到最近使用的大小和位置,而當(dāng)前活動(dòng)的窗口仍然保持活動(dòng)。

  VbMinimizedNoFocus 6 窗口會(huì)以一個(gè)圖標(biāo)來(lái)顯示,而當(dāng)前活動(dòng)的窗口仍然保持活動(dòng)。  

  二、關(guān)于WinRar的用法

    主要介紹以下如何在WinRar中用命令行來(lái)壓縮和解壓縮文件。

  壓縮:WINRAR A [-switches] [Files] [@File lists]

  例如你想把try.mdb壓縮到C盤(pán)下,可以WINRAR A C:\try.rar C:\try.mdb

  解壓縮:如果帶目錄解壓縮

      WINRAR X [-switches] [Files] [@File lists] [destionation folder\]

      如果在當(dāng)前目錄解壓縮,即解壓縮時(shí)不寫(xiě)目錄名

      WINRAR E [-switches] [Files] [@File lists] [destionation folder\]

  例如你想把try.rar解壓縮到C盤(pán)下,可以WINRAR X C:\try.rar C:\try.mdb  

  三、一個(gè)例子

    在VB中新建一個(gè)工程,在Form1中添加兩個(gè)按鈕Command1、Command2和Command3,把他們的Caption屬性分別設(shè)為"壓縮文件"、"解壓縮文件"和"傳遞文件"。按Command1時(shí)把文件try.mdb壓縮成try.rar。

  Private Sub Command1_Click()

  Dim Rarexe As String 'WINRAR執(zhí)行文件的位置

  Dim Source As String ' 壓縮前的原始文件

  Dim Target As String ' 壓縮后的目標(biāo)文件

  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

  解壓的過(guò)程類(lèi)似,按Command2可以把try.rar解壓生成 try.mdb。在執(zhí)行了上面的壓縮過(guò)程后,可以刪除文件try.mdb,來(lái)解壓縮重新生成try.mdb。

  Private Sub Command2_Click()

  Dim Rarexe As String 'WINRAR執(zhí)行文件的位置

  Dim Source As String ' 解壓縮前的原始文件

  Dim Target As String ' 解壓縮后的目標(biāo)文件

  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

  文件從一臺(tái)計(jì)算機(jī)傳輸?shù)搅硪慌_(tái)計(jì)算機(jī)前,應(yīng)知道另一臺(tái)計(jì)算機(jī)的名字,然后用FileCopy語(yǔ)句就可以了。假設(shè)要把壓縮后try.rar傳遞到計(jì)算機(jī)名為"other"的共享目錄"want"下。

  Private Sub Command3_Click()

  Dim SourceFile, DestinationFile

   SourceFile ="C:\try.rar " ' 指定源文件名。

   DestinationFile = "\\other\want\try.rar" ' 指定目的文件名。

   FileCopy SourceFile, DestinationFile ' 將源文件的內(nèi)容復(fù)制到目的文件中。

  End Sub

  怎么樣,十分簡(jiǎn)單吧?

相關(guān)頻道: eNews

您對(duì)本文或本站有任何意見(jiàn),請(qǐng)?jiān)谙路教峤唬x謝!

投稿信箱:tougao@enet16.com