Variable : version de Windows
Shakipu
-
Shakipu -
Shakipu -
Bonjour,
Je voudrais savoir quelle commande (ou script) me permettrait de faire une action ou une autre selon la version de Windows... Par exemple :
si Windows est Windows XP
echo C'est un XP
si Windows est Vista
echo c'est un foutu Vista
il me faut juste 2 conditios : pour Windows XP et Vista ( comme dans l'exemple )
J'ai cherché par moi même mais je suis pas assez expérimenté... En fait je connais presque rien
Merci d'avance
Je voudrais savoir quelle commande (ou script) me permettrait de faire une action ou une autre selon la version de Windows... Par exemple :
si Windows est Windows XP
echo C'est un XP
si Windows est Vista
echo c'est un foutu Vista
il me faut juste 2 conditios : pour Windows XP et Vista ( comme dans l'exemple )
J'ai cherché par moi même mais je suis pas assez expérimenté... En fait je connais presque rien
Merci d'avance
A voir également:
- Variable : version de Windows
- Vba range avec variable ✓ - Forum VB / VBA
- Variable d'environnement temp ✓ - Forum Microsoft Office
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- Variable objet ou bloc "with" non définie - Forum VB / VBA
13 réponses
Alors alors,
ce code est parfait en ce qui concerne Windows XP mais quand ça concerne Vista... En fait, la commande "ver" dans Vista donne quelque chose comme : Microsoft Windows [version 6.0.quelquechose] donc ça ne marche pas... Je pense qu'il faut se baser sur le numéro de version ( 5 pour XP et 6 pour Vista ) pour que ce code marche dans les deux Windows... Une idée ?
Merci d'avance
ce code est parfait en ce qui concerne Windows XP mais quand ça concerne Vista... En fait, la commande "ver" dans Vista donne quelque chose comme : Microsoft Windows [version 6.0.quelquechose] donc ça ne marche pas... Je pense qu'il faut se baser sur le numéro de version ( 5 pour XP et 6 pour Vista ) pour que ce code marche dans les deux Windows... Une idée ?
Merci d'avance
Ton idée sur le numéro était pas mal réfléchie mais quand tu regardes le VER de Windows, tu trouves [version 5.0.2600] donc un 6...
mais je pense que la deuxième idée est l'idéale
merci beaucoup !
mais je pense que la deuxième idée est l'idéale
merci beaucoup !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Finalement je vais essayer une autre technique : nous avons :
- sous Windows XP, "Microsoft Windows XP"
- sous Win Vista, "Microsoft Windows [version 6.0.1600]
IF "%version_W%" == "XP" (
C'est un XP )
IF "%version_W%" == "[v" (
C'est un foutu Windows
Cela fonctionnerait-t'il ? Je ne peux pas tester pour l'instant, je ne pourrais essayer que ce soir
merci d'avance
- sous Windows XP, "Microsoft Windows XP"
- sous Win Vista, "Microsoft Windows [version 6.0.1600]
IF "%version_W%" == "XP" (
C'est un XP )
IF "%version_W%" == "[v" (
C'est un foutu Windows
Cela fonctionnerait-t'il ? Je ne peux pas tester pour l'instant, je ne pourrais essayer que ce soir
merci d'avance
Je ne pense pas que cela fonctionne de cette manière. Dans la variale %%K tu auras "[version"
De cette manière ça doit fonctionner (à tester sous Vista)
IF "%version_W%" == "XP" ( C'est un XP ) IF "%version_W%" == "[v" ( C'est un foutu Windows )
De cette manière ça doit fonctionner (à tester sous Vista)
IF "%version_W%" == "XP" ( C'est un XP ) IF "%version_W%" == "[version" ( C'est un foutu Windows )
Dernière nouvelle, ma variable était en fait pour copier un fichier dans C:/Documents and Settings/%user%/ et apparemment, la commande %homedrive% permet d'y accéder quel que soit la version de Windows et l'utilisateur...
Je travaille dessus
P.S : quelqu'un aurait une variable permettant de savoir dans quel disque se situe le script ?
Je travaille dessus
P.S : quelqu'un aurait une variable permettant de savoir dans quel disque se situe le script ?
Petite erreur de ma part, c'est pas %homedrive% qui permet ça mais %homedrive%%homepath% ou %userprofile%
Bonsoir,
Je te propose ce qui suit en MS-DOS:
Je te propose ce qui suit en MS-DOS:
SETLOCAL ENABLEdelayedExpansion SETLOCAL ENABLEextensions CLS rem INFORMATIONS (sous windows XP) : rem Cette commmande affiche : Microsoft Windows XP [version 5.1.2600] VER rem rem Cette commmande affiche : Windows_NT ECHO %os% rem Moyen d'identifier la version XP ou Vista : FOR /F "tokens=1-4*" %%I IN ( ' VER ^| FIND "Windows" ') DO ( SET "version_W=%%K" ) IF "%version_W%" == "XP" ( ECHO C'est un XP ) rem ici je présume que le libellé est "Vista". Je ne peux pas faire le test je rem suis sous XP. IF "%version_W%" == "Vista" ( ECHO C'est un foutu Vista ) pause
Bonsoir,
Compte tenu du message de la commande VER ( Microsoft Windows [version 6.0.quelquechose) qui ne contient pas le mot Vista en lieu et place de XP, ce qui a pour effet d'éliminer l'avantage du "positionnel" (position des groupes de c. séparés par un espace au moins, dans les deux messages)) :
Microsoft Windows [version 6.0.quelquechose]
comparé à
Microsoft Windows XP [version 5.1quelquechose]
La recherche sur un numéro (5. ou 6.) semble raisonnable (il est peu probable de trouver à terme une version 5.6.1 par exemple pour windows XP ou l'équivalent pour Vista). Dans ce cas on peut programmer comme ceci :
Autre possibilité :
Si tu es certain de n'exécuter ce batch tel qu'il est, que sur les deux systèmes XP OU Vista, on peut aussi procéder par élimination (si ce n'est pas l'un, c'est l'autre) sans changer autre chose au code existant.
Dis-moi ce que tu en penses.
Compte tenu du message de la commande VER ( Microsoft Windows [version 6.0.quelquechose) qui ne contient pas le mot Vista en lieu et place de XP, ce qui a pour effet d'éliminer l'avantage du "positionnel" (position des groupes de c. séparés par un espace au moins, dans les deux messages)) :
Microsoft Windows [version 6.0.quelquechose]
comparé à
Microsoft Windows XP [version 5.1quelquechose]
La recherche sur un numéro (5. ou 6.) semble raisonnable (il est peu probable de trouver à terme une version 5.6.1 par exemple pour windows XP ou l'équivalent pour Vista). Dans ce cas on peut programmer comme ceci :
FOR /F %%I IN ( ' VER ^| FINDSTR /C:"5." ') DO ( ECHO C'est un XP ) FOR /F %%I IN ( ' VER ^| FINDSTR /C:"6." ') DO ( ECHO C'est un foutu Vista )
Autre possibilité :
Si tu es certain de n'exécuter ce batch tel qu'il est, que sur les deux systèmes XP OU Vista, on peut aussi procéder par élimination (si ce n'est pas l'un, c'est l'autre) sans changer autre chose au code existant.
IF "%version_W%" == "XP" ( ECHO C'est un XP ) ELSE ( ECHO C'est un foutu Vista )
Dis-moi ce que tu en penses.