Compresser un répertoire ou un fichier en vbs [Résolu]

Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
- - Dernière réponse : bayadkarim
Messages postés
22
Date d'inscription
vendredi 20 décembre 2013
Dernière intervention
26 janvier 2015
- 26 janv. 2015 à 10:00
Bonjour, je voudrai créer un script vbs qui compresse un fichier ou un répertoire, si s’est possible, quelqu’un sautait-il m’aider ?
Afficher la suite 

Votre réponse

20 réponses

Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Bonjour et merci beaucoup

S'est bien du VBS ?

J'ai un petit souci sur Windows, les script ne se lance plus avec cscript mais avec wscript; sauriez vous comment réglé sa ?
Commenter la réponse de lunnatick
Messages postés
2382
Date d'inscription
jeudi 12 juillet 2001
Dernière intervention
15 décembre 2018
0
Merci
Oui c'est bien du vbs.
Tu n'as pas besoin de cscript ou wscript pour l'executer !
Tu mets le code dans un fichier .vbs, tu double-clics il s'execute


Commenter la réponse de cs_Willi
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Merci encore

Le script fonctione mais le l'archive reste vide malgrés que le répertoire cible contien des fichier .txt .doc et .jpg.

Pour cscript je sais qu'il sufi de double cliquer sur le vbs justement s'est quand je double clique le VBS une fenêtre dos s'ouvre sa s'est par ce que wscript s'est mis par défaut à la place de cscript.
Commenter la réponse de lunnatick
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Il y a autre chose, j'aimerai créer des varaibel en tête de mon VBS pour y référencé les chemin WinRar.exe source et destination, un peut comme ceci:
Dim ObjShell

Set ChemWinRar = "C:\program files\winrar\rar"
Set RepSource = "C:\Documents and Settings\user\Bureau\RepTestComperss\*"
Set DestinCible = "C:\Documents and Settings\user\Bureau\test.rar"
Set ObjShell = CreateObject("WScript.shell")

ObjShell.Exec "ChemWinRar a -r " & chr(34) & "DestinCible " & chr(34) & " " & chr(34) & "RepSource" & chr(34)

Mais sa ne fonctionne pas, pouriez vous m'aider ?
Commenter la réponse de lunnatick
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Merci pour la présision
Commenter la réponse de lunnatick
Messages postés
2382
Date d'inscription
jeudi 12 juillet 2001
Dernière intervention
15 décembre 2018
0
Merci
Bizarre l'histoire de l'archive vide. A l'éxecution du vbs une invite de commande dos s'ouvre et se ferme une fois terminée.
As-tu cela ?

pour des variables utilises plutot des constantes pour définir tes chemins (vérifis si tes chemins existent: :) )
Const ChemWinRar = "C:\program files\winrar\rar"
Const RepSource = "C:\Documents and Settings\user\Bureau\RepTestComperss\*"
Const DestinCible = "C:\Documents and Settings\user\Bureau\test.rar"

Set ObjShell = CreateObject("WScript.shell")

ObjShell.Exec ChemWinRar & " a -r " & chr(34) & DestinCible & chr(34) & " " & chr(34) & RepSource & chr(34)
Commenter la réponse de cs_Willi
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Merci encore, sa marche pas chez moi.
Commenter la réponse de lunnatick
Messages postés
2382
Date d'inscription
jeudi 12 juillet 2001
Dernière intervention
15 décembre 2018
0
Merci
Tes chemins sont-ils corrects ?
ObjShell.Exec chr(34) & ChemWinRar & chr(34) & " a -r " & chr(34) & DestinCible & chr(34) & " " & chr(34) & RepSource & chr(34)
Commenter la réponse de cs_Willi
Messages postés
1855
Date d'inscription
jeudi 23 mai 2002
Dernière intervention
24 juin 2018
0
Merci
Re à lunnatik, willi et ceux qui lisent les topics...

Une constante ne suffit pas.
Etant néophite le "Set ObjShell = CreateObject("WScript.shell")" ne suffit peut-être pas.
lunnatik voudrait un script en VBS,
il faut combiner WSH, WMI et Shell (ou un seul suffit peut-etre)

J'ai testé le script deWilli, et, effectivement ouverture d'une windows dos.
Commenter la réponse de cs_JMO
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Oui mes variables sont bien renseigner.

Se n'est pas que se script qui ouvre un fenêtre ods mes tout mes script chez moi
Commenter la réponse de lunnatick
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Au faite comment fait on pour créer un archuve .zip au lieu de .rar ?
Commenter la réponse de lunnatick
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Pour le .zip s'été tout con il sufisé de changer l'extension.

Ce pandant il reste un petit souci, dans l'archive fraichement créer il y a toute l'arborésnces de répertoire depuis le premier répertoire à la racine du disque dur, vous savez comment annuler sa ?
Commenter la réponse de lunnatick
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
S'est possible d'éxtraire les archive aussi ?
Commenter la réponse de lunnatick
Messages postés
2382
Date d'inscription
jeudi 12 juillet 2001
Dernière intervention
15 décembre 2018
0
Merci
lunnatick pour savoir les possibilités de rar fait un rar.exe /?
Commenter la réponse de cs_Willi
Messages postés
175
Date d'inscription
lundi 9 mai 2005
Dernière intervention
28 octobre 2013
0
Merci
Ok merci encore
Commenter la réponse de lunnatick
Messages postés
22
Date d'inscription
vendredi 20 décembre 2013
Dernière intervention
26 janvier 2015
0
Merci
Bonjour
comment mettre en mode silencieux svp
Commenter la réponse de bayadkarim
Messages postés
1855
Date d'inscription
jeudi 23 mai 2002
Dernière intervention
24 juin 2018
0
Merci
Bonsoir,

Utilise la méthode Run qui possède l'argument intWindowStyle.
0 pour masquer la fenêtre.
Set objShell = CreateObject("WScript.Shell") 
objShell.Run strCommand,0

Se référer à la doc SCRIPT56.chm
Commenter la réponse de cs_JMO
Messages postés
22
Date d'inscription
vendredi 20 décembre 2013
Dernière intervention
26 janvier 2015
0
Merci
Bonjour cs_JMO,
j'ai utilisé la commande Shell et ça marche mais mon problème j'ai une listbox qui contient la liste des fichier sélectionné et j'aimerai mettre juste la liste de fichier sélectionné dans une seul fichier qui contien les fichier sélectionné mais j'arrive pas a trouvé voici le code que j'ai mis le

For l = 0 To List1.ListCount - 1

Shell "C:\program files\winrar\rar a -r " & Chr(34) & ".\ARCHIVER\" & "UMB_kkk" & ".zip" & Chr(34) & " " & Chr(34) & List1.List(l) & Chr(34)

Next l

merci d'avance
Commenter la réponse de bayadkarim
Messages postés
2382
Date d'inscription
jeudi 12 juillet 2001
Dernière intervention
15 décembre 2018
-2
Merci
Salut,


Si tu as winrar d'installer par exemple tu peux compresser un fichier ou un répertoire.
Ci-dessous un exemple vbs pour compresser un répertoire en une archive rar.
Je pense que tu peux créer une archive zip avec rar.exe mais j'en suis pas sur.


8<--------------------------------------------------------------
Dim ObjShell
Set ObjShell = CreateObject("WScript.shell")

ObjShell.Exec "C:\program files\winrar\rar a -r " & chr(34) & "c:\test.rar" & chr(34) & " " & chr(34) & "c:\tondossier\*" & chr(34)
-------------------------------------------------------------->8

Voila une méthode simple
Commenter la réponse de cs_Willi
Messages postés
1855
Date d'inscription
jeudi 23 mai 2002
Dernière intervention
24 juin 2018
-2
Merci
Bonsoir,

Le script de Willy est bien en VBS.
Test sur XP (sans VB) => ok

Dim ObjShell
Set ObjShell = CreateObject("WScript.shell")
ObjShell.Exec "C:\program files\winrar\rar a -r " & chr(34) &_
"d:\jeanmarc.rar" & chr(34) & " " & chr(34) & "d:\test\*"

Surement à optimiser pour éviter de préciser le path de WinRAR.
Commenter la réponse de cs_JMO

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.