Comment compresser et décompresser un dossier en batch Windows ?

Réponses rédigées par Antoine
Dernière mise à jour : 2018-12-16 14:14:19
Thèmes : windows - script - batch - wmi
Question

Comment faire pour compresser et décompresser de manière récursive un dossier en batch Windows ?

Réponse

Pour compresser et décompresser un dossier, et son contenu, vous pouvez utiliser la Class WMI Compress et Uncompress.

Pour compresser un dossier et ses fichiers avec WMI :

Exemple batch Windows compress.vbs : on compresse le dossier c:\Test

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
 & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _
 ("SELECT * FROM Win32_Directory WHERE Name = 'c:\\Test'")
For Each objFolder in colFolders
 errResults = objFolder.Compress
 Wscript.Echo errResults
Next

Pour décompresser un dossier et ses fichiers avec WMI :

Exemple batch Windows uncompress.vbs : on décompresse le dossier c:\Test

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
 & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _
 ("SELECT * FROM Win32_Directory WHERE Name = 'c:\\Test'")
For Each objFolder in colFolders
 errResults = objFolder.Uncompress
 Wscript.Echo errResults
Next

Vous trouverez d'avantage d'information sur le site du Centre de développement Windows.