用程式控制 檔案 或 資料夾(目錄) 進行壓縮
如何用程式控制 資料夾(目錄) 或 檔案 進行壓縮
' 傳完整路徑到底下Function的引數裡
' 例如要壓縮 C:\ABC 的資料夾
If CompressFolder("C:\ABC") Then
MsgBox "資料夾或檔案壓縮完成!"
Else
MsgBox "資料夾或檔案壓縮失敗!"
End If
Private Function CompressFolder(strFolder As String) As Boolean
Dim strQry As String, colFolders, objFolder
If Len(Dir(strFolder, 16)) > 0 Then ' 檢查檔案或資料夾是否存在
strFolder = Replace(strFolder, "\", "\\")
' 使用 WMI 物件 的 Win32_Directory 類別進行查詢
strQry = "Select * from Win32_Directory where name = '" & strFolder & "'"
Set colFolders = GetObject("winmgmts:").ExecQuery(strQry)
For Each objFolder In colFolders
CompressFolder = (objFolder.Compress = 0) ' 進行資料夾或檔案壓縮
Next
End If
End Function