Call *.vbs et choisir le MsgBox désiré

Résolu
Henreck Messages postés 10 Statut Membre -  
Henreck Messages postés 10 Statut Membre -
Je fais un programme qui appel des scripts vbs pour afficher des fenêtres:
MsgBox "La sauvegarde vas s'effectuer", 0, "SaveDrive.exe"


La problématique résides dans le fait que je ne sais pas comment faire autrement que comme ceci:
Je créé plusieurs fichier vbs pour afficher une fenêtre spécifique. Ce que je veux faire c'est regrouper tout ces MsgBox en un script vbs et avec mon script bat j’appel le script vbs avec le MsgBox de mon choix

Merci de votre aide !

2 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    voici un exemple de script vbs
    action = WScript.Arguments.Named("a")
    select case action
    case "nok":
           MsgBox "Un problème est survenu lors de la sauvegarde du Lecteur !", 48, "SaveDrive.exe"
    case "ok":
           MsgBox "La sauvegarde du Lecteur a réussi.", 64, "SaveDrive.exe"
    end select

    si tu l'appelles "alerte.vbs", tu peux l’appeler ainsi:
    call alerte /a:ok

    ou
    call alerte /a:nok
    1
    1. Henreck Messages postés 10 Statut Membre
       
      Excellent, ça fonctionnes bien ! Merci :)
      0
  2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    tu peux faire un script vbs qui reçoit un paramètre et utilise ce paramètre pour décider que faire.
    ou qui reçoit en paramètre le message à afficher.
    0
    1. Henreck Messages postés 10 Statut Membre
       
      Justement, c'est quelque chose que je suppose être possible, mais que je n'arrives pas à faire car je ne maîtrise pas assez le vbs. C'est pour ça que je demande de l'aide :)
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > Henreck Messages postés 10 Statut Membre
         
        difficile d'être plus précis avec les informations partagées.
        0
    2. Henreck Messages postés 10 Statut Membre
       
      Pas de problème.
      J'ai ce script SaveDrive.bat:
      :: [Save Actual Drive] Last edit March 16th 2019, by Henreck
      :: %b2eincfilepath% is the environment variable to retrieve the location where
      :: the embeded items will be extracted
      @Echo off
      SetLocal EnableExtensions EnableDelayedExpansion
      IF Exist "#" (Set b2eincfilepath=%cd%\src)
      FOR /F %%A IN ('wmic os get localdatetime ^| FINDSTR [0-9]') DO Set date=%%A
      Set time=%date:~0,4%-%date:~4,2%-%date:~6,2% %time:~0,2%H%time:~3,2%
      FOR /F "tokens=1-5*" %%A in ('vol') do ( Set vol=%%F & Goto SaveDrive)
      :SaveDrive
      Set drive=%vol:~0,1%:\
      Set name= %vol:~12,32%
      Call "%b2eincfilepath%\7Zip\7za.exe" a "D:\USB_BCK\(%name%) %time%.zip" "%drive%"
      IF Exist "D:\USB_BCK\(%name%) %time%.zip" (
      Call "%b2eincfilepath%\complete.vbs"
      Goto EOF
      ) Else (
      Call "%b2eincfilepath%\error.vbs"
      Goto EOF
      )


      Et j'ai ces deux scripts vbs - error & complete:
      MsgBox "Un problème est survenu lors de la sauvegarde du Lecteur !", 48, "SaveDrive.exe"

      MsgBox "La sauvegarde du Lecteur a réussi.", 64, "SaveDrive.exe"


      Ce que je veux faire c'est regrouper ces deux instructions en un fichier vbs par exemple:

      'Si la variable x appeler du fichier SaveDrive.bat est vrai, interpréter la ligne ci-dessous
      MsgBox "Un problème est survenu lors de la sauvegarde du Lecteur !", 48, "SaveDrive.exe"

      'SI la variable y appeler du fichier SaveDrive.bat est vrai, interpréter la ligne ci-dessous
      MsgBox "La sauvegarde du Lecteur a réussi.", 64, "SaveDrive.exe"


      Par contre je ne sais pas comment faire en sorte que mon scripts.vbs puisse faire ça
      0