IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

problemes Cosmètiques suite à un problème de récupération de variable


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 4
    Par défaut problemes Cosmètiques suite à un problème de récupération de variable
    Bonjour à tous.
    je suis en train de mettre en place un script mais je me heurte a un problème de type cosmetique...
    je cherche à faire des encadrés en batch et j'avoue avoir des difficultés avec des variables à longueur... variable
    l'idée serait de faire une modification sur la variable du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    @echo off
    CLS
    	REM RECHERCHE DU NOM DU SYSTEME
    	VER | FIND /i "version 5.1" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS XP
    	
    	VER | FIND /i "version 5.2" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS SERVER 2003
    	
    	VER | FIND /i "version 6.0.6002" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS VISTA OU WINDOWS SERVER 2008
    	
    	VER | FIND /i "version 6.1.7601" > nul 
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS 7
    	
    	VER | FIND /i "version 6.1.7600" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS SERVER 2008-R2
    	
    	VER | FIND /i "version 6.2.9200" > nul    
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS 8 
    	
    	VER | FIND /i "version 6.2.9201" > nul    
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS SERVER 2012
    
    set affi=
    set affi=                                       º
    
    
    setlocal enabledelayedexpansion
    set VrCompt=-1
    :boucle
    set /a VrCompt+=1
    set test2=!WIN:~%VrCompt%,1!
    set affi1=%affi:~[%VrCompt%]%
    if not "%test2%"=="" goto boucle
    
    echo %affi1%
    
    	ECHO  º                                                                            º
    	ECHO  º     SYSTEME MICROSOFT             : %Win%%affi1%                                  
    	ECHO  º                                                                            º
    pause
    Mais je n'arrive pas à avoir le formatage visuel comme je le souhaiterais (caracteère d'échappement...???).
    Sinon il y a toujours la solution des errorlevels avec une comparaison du nombre de caracteres ... mais je n'aime pas du tout cette solution... pas optimisée, lente et galère à mettre en place pour la totalité de mes variables....

    merci pour votre aide.
    Cordialment

    Monsieur DOM

  2. #2
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut Monsieur_Dom,

    Affiche une fenêtre windows en VSB, c'est pratique, jolie et surtout super simple !

    Tu cree un fichier .vsb qui contient la commande MsgBox "ton_texte ta_variable"
    et ensuite tu apelle ce vbs à l'aide de start et voilà

    Voici ton code modifie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    @echo off
    CLS
    	REM RECHERCHE DU NOM DU SYSTEME
    	VER | FIND /i "version 5.1" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS XP
    	
    	VER | FIND /i "version 5.2" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS SERVER 2003
    	
    	VER | FIND /i "version 6.0.6002" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS VISTA OU WINDOWS SERVER 2008
    	
    	VER | FIND /i "version 6.1.7601" > nul 
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS 7
    	
    	VER | FIND /i "version 6.1.7600" > nul
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS SERVER 2008-R2
    	
    	VER | FIND /i "version 6.2.9200" > nul    
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS 8 
    	
    	VER | FIND /i "version 6.2.9201" > nul    
    	IF %ERRORLEVEL%==0 SET WIN=WINDOWS SERVER 2012
    
    
    setlocal enabledelayedexpansion
    set VrCompt=-1
    :boucle
    set /a VrCompt+=1
    set test2=!WIN:~%VrCompt%,1!
    set affi1=%affi:~[%VrCompt%]%
    if not "%test2%"=="" goto boucle
    
    (Echo MsgBox "SYSTEME MICROSOFT       :  %Win%%affi1%")>RESPOSTA.VBS
    
    START RESPOSTA.VBS
    GOTO:EOF
    endlocal
    C'est pas beau ça une jolie fenêtre windows !

  3. #3
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    une autre solution mais en Vbscript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    MsgBox FindOSType("."),64,"Système d'exploitation"
    Function FindOSType(strComputer)
    'Defining Variables
        Dim objWMI, objItem, colItems
        Dim OSVersion, OSName, ProductType
     
    'Get the WMI object and query results
        Set objWMI = GetObject("winmgmts://" & strComputer & "/root/cimv2")
        Set colItems = objWMI.ExecQuery("Select * from Win32_OperatingSystem",,48)
     
    'Get the OS version number (first two) and OS product type (server or desktop) 
        For Each objItem in colItems
            OSVersion = Left(objItem.Version,3)
            ProductType = objItem.ProductType
        Next
    'Time to convert numbers into names
        Select Case OSVersion
        Case "6.1"
            OSName = "Windows 7"
        Case "6.0" 
            OSName = "Windows Vista"
        Case "5.2" 
            OSName = "Windows 2003"
        Case "5.1" 
            OSName = "Windows XP"
        Case "5.0" 
            OSName = "Windows 2000"
        Case "4.0" 
            OSName = "Windows NT 4.0"
        Case Else
            OSName = "Windows 9x"
        End Select
     
    'Return the OS name
        FindOSType = OSName
     
    'Clear the memory
        Set colItems = Nothing
        Set objWMI = Nothing
    End Function

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 4
    Par défaut
    Merci de votre réponse...
    ... et désolé de ne m'être connecté avant ce soir... je teste ce code

    ps : Ne connaissant pas le vb et autodidacte en informatique, je me suis intéressé qu'au batch pour le moment ( ok c'est vieillot mais cela fonctionne encore pas trop mal )...

Discussions similaires

  1. Réponses: 13
    Dernier message: 05/11/2014, 14h36
  2. [MySQL] Problème de récupération de variables en $_GET
    Par gussoner dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 07/11/2006, 11h38
  3. Réponses: 6
    Dernier message: 07/07/2006, 17h27
  4. [VBA-E]problème de récupération de variables et d'event
    Par zenix dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 24/04/2006, 12h53
  5. [MySQL] problèmes de récupération de variables
    Par bullrot dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 03/03/2006, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo