2012年11月18日日曜日

[Script][VBS]ZIP圧縮をする

VB Scriptでzip圧縮をするサンプルです。

圧縮する部分をSubプロシージャにしています。
引数で圧縮したいファイルのファイルオブジェクトを変数名:objFileで受け取り、ファイル名に ".zip" の拡張子をつけて圧縮ファイルを作ります。このスクリプトで圧縮にかかる時間は1分以内を見積もっています。(WScript.Sleep 60000)

引数字体が圧縮ファイルだった場合には自分自身を削除して終了しています(もともとツールで使っていた部分の切り出しなので。。。)。
また引数の1ファイルからzip圧縮ファイルを1個作るというコードになっています。

VB Script で ZIP 圧縮
Sub Zip_Compress(objFile)
    ZipFile = objFile.Path & ".zip"

    If FS.FileExists(ZipFile) then
      objFile.Delete

    Else
      With FS.CreateTextFile(ZipFile)
        .Write "PK" & Chr(5) & Chr(6) & String(18,0)
        .Close
      End With

      With SA.NameSpace(ZipFile)
        .CopyHere objFile.Path
      End With

      WScript.sleep 60000

      objFile.Delete

    End If
End Sub


Script のページに戻る

0 件のコメント:

コメントを投稿