Problème création programme .vbs [Résolu]
Bonjour
J'aimerais créer un petit fichier .vbs, qui me permet quand je le double clique dessus de lancer une application, puis quand l'utilisateur ferme l'application, mon programme se remet à executer le code qui va aller copier le contenu d'un dossier A vers un dossier B, en n'écrasant uniquement les fichiers de date inférieure.
Je précise que je n'utilise aucun logiciel de programmation, je n'utilise que le bloc note en .txt, que je renomme après en .bat ou .vbs .
J'avais dans un premier temps commencé avec un .bat, mais le souci est la fenêtre d'invite de commande, et souhaitant que mon script s'exécute en silencieux (pour éviter que l'utilisateur puisse fermer l'invite d ecommande et donc interrompre mon programme) je suis alors passer à une autre solution.
monfichier.bat :
Code:
1 2 3 4
| @echo off
c:\Progra~1\repertoire\application.exe
xcopy D:\dossierA\ P:\dossierB\ /d /y /i |
J'ai alors essayer de créer en plus un fichier .vbs, qui vienne exécuter mes commandes batch, permettant de ne pas afficher l'invite de commande.
monfichier.bat :
Code:
1 2 3 4
| @echo off
c:\Progra~1\repertoire\application.exe
xcopy D:\dossierA\ P:\dossierB\ /d /y /i |
monfichier1.vbs :
Code:
1 2 3 4 5
|
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell" )
WshShell.Run "monfichier.bat", SW_HIDE,true |
Tout marche bien ormis le fait qu'il ne copie pas les fichiers, on dirait que la commande xcopy n'est pas prise en compte, ou ne marche pas avec le vbs.
J'ai enfin tenter directement un seul fichier .vbs qui ferait les deux tâches directement :
Code:
1 2
| Set WshSell = WScript.CreateObject("WScript.Shell")
Return = WshShell.Run("Application.exe" , 1, true) |
Donc là mon application s elance bien, et avec la valeur 1 il n'exécute la suite du code que quand l'application ets fermée, mais derrière je n'arrive toujours pas à copier mes fichiers.
Code:
1 2
| Set copier = CreateObject("Scripting.FileSystemObject")
copier.CopyFile "D:\dossierA\PFE.docx","P:\dossierB",True |
Ou encore d'une autre tentative :
Code:
1 2 3 4 5
| Dim copier As FileSystemObject
Set copier = New FileSystemObject
copier.CopyFolder "D:\dossierA", "P:\dossierB", True
Set copier = Nothing |
Voila je sais que quelqu'un qui sait programmer aurait trouver comment faire cette requête en 5 minutes ou moins, mais je suis loin d'être un crack de la programmation, et mes recherches jusqu'à présent ont été infructueuse.
Merci d'avance de vos réponses.