Form Windows et paramètre Batch

Résolu
Hello,

J'ai besoin pour un batch (DOS) de demander à un utilisateur de saisir des valeurs qui serviront de variables dans le traitement.
Qui sait ou je peux trouver un petit EXE qui puisse m'aider à cela ?

D'avance Thank's

3 réponses

  1. SAlut peut mettre pour les forumeur interesser ton inputBox en batch ?

    Merci et @ +
    1. Voila, voila....
      A+

      ' ____________________________________________________________________________
      ' Script de recupération de valeurs via POPUP Windows pour Batch Dos
      ' Syntaxe : ValBox /Q<Question incitant la saisie> /T<Titre de la fenêtre>
      ' Génère l'écriture dans le fihier C:\temp.tmp de la valeur saisie
      ' Ctec2i | JMB | 18/10/2006
      ' ____________________________________________________________________________
      Set sh = Wscript.CreateObject("WScript.Shell")
      Set envSyst = sh.Environment("SYSTEM")
      Set args=Wscript.Arguments
      nbargs=args.count

      If testarg("T") Then
      Titre=getarg
      End If

      If testarg("Q") Then
      Question=getarg
      End If

      Set fs = CreateObject("Scripting.FileSystemObject")
      Set fich = fs.OpenTextFile("C:\temp.tmp", 2, true)
      Change = UCase(Inputbox(Question,Titre))
      fich.writeLine Change
      fich.close
      Wscript.Quit
      Set envSyst = nothing
      set sh=nothing

      Function testarg(param)
      testarg=false
      getarg=""
      For i = 0 To nbargs-1
      curarg=args(i)
      If left(curarg,1)="/" Then
      If mid(ucase(curarg),2,1)=param Then
      getarg=mid(curarg,3,len(curarg))
      testarg=true
      exit function
      End If
      End If
      Next
      End Function
    2. Super merci beaucoup
    3. @fredhDe rien...
      J'avais besoin de ce type de script pour un batch de restauration qui tourne avec CA BrighStor pour l'un de mes clients
      Procédure manuelle de restauration avec demande de paramètres....
    4. @fredhBonjour

      jútilise ton batch pour faire un inputbox sous une fenetre cmd dans XP.
      Je l ai appeler Valbox.vbs
      dans mon fichier batch je l appele comme ceci :
      call Valbox.vbs /T"Titre de la Valbox " /Q"texte dans la Valboxe" /F"C:\valbox.txt"


      Ca marche tres bien mais j aimerai gerer l apuis sur le bouton annuler et le bouton fermeture (croix rouge).
      J ai esayer avec des errorlevel en sortie mais apparement je recupere toujours la valeur 0.
      Peut tu me donner ton avis sur une solution STP

      Une autre remarque
      l argument /T ne marche pas chez moi (mauvaise manip ?)
      j ai rajouter un nouveau argument /F pour donner un chemin et nom de fichier. Celui ci marche corectement.

      Encore une autre remarque :
      Est ce normal que le texte est donner en minuscule et que le resultat dans le fichier soit en majuscule ?

      merci et @+

      Voici le code vbs
      rem ____________________________________________________________________________ 
      rem  Script de recupération de valeurs via POPUP Windows pour Batch Dos 
      rem Syntaxe : ValBox /Q<Question incitant la saisie> /T<Titre de la fenêtre> 
      rem Génère l'écriture dans le fihier C:\temp.tmp de la valeur saisie 
      rem Ctec2i | JMB | 18/10/2006 
      rem  ____________________________________________________________________________ 
      Set sh = Wscript.CreateObject("WScript.Shell") 
      Set envSyst = sh.Environment("SYSTEM") 
      Set args=Wscript.Arguments 
      nbargs=args.count 
      
      If testarg("T") Then 
      Titre=getarg 
      End If 
      
      If testarg("Q") Then 
      Question=getarg 
      End If 
      
      If testarg("F") then
      Fichier_=getarg
      end If
      
      Set fs = CreateObject("Scripting.FileSystemObject") 
      Set fich = fs.OpenTextFile(Fichier_, 2, true) 
      Change = UCase(Inputbox(Question,Titre)) 
      fich.writeLine Change 
      fich.close 
      Wscript.Quit 
      Set envSyst = nothing 
      set sh=nothing 
      
      Function testarg(param) 
      testarg=false 
      getarg="" 
      For i = 0 To nbargs-1 
      curarg=args(i) 
      If left(curarg,1)="/" Then 
      If mid(ucase(curarg),2,1)=param Then 
      getarg=mid(curarg,3,len(curarg)) 
      testarg=true 
      exit function 
      End If 
      End If 
      Next 
      End Function
  2. En fait, j'ai écrit un VBS qui gèrent l'INPUTBOX et restitue la valeur saisie au Batch DOS.
    Y'a plus de blème.
    Merci.
    1. Modérateur
      Salut,

      Il te faut regarder du côté de la commande "choice".

      ;-))
      1. LE script tourne sur WS2003 et je crois que CHOICE n'est plus supporté dans cet environnement....
        Je regarde tout de même le site.

        Merci