Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

script test OS

5 réponses
Avatar
Thierry
Bonjour,

Je recherche la commande permettant de tester dans un script (Vbs) l'OS de
la station.
If "%OS%" dans un script ... je n'ai rien trouvé dans le forum.
Ce script devra s'exécuter aussi bien sur des stations 9x,XP ou 2000.

Merci d'avance ...

5 réponses

Avatar
Fred
Dans son message
Thierry nous dit :

Bonjour,

Je recherche la commande permettant de tester dans un script (Vbs)
l'OS de la station.
If "%OS%" dans un script ... je n'ai rien trouvé dans le forum.
Ce script devra s'exécuter aussi bien sur des stations 9x,XP ou 2000.

Merci d'avance ...


Bonsoir,
Pour toutes ces petites tâches courantes une seule adresse : le script
center
http://www.microsoft.com/technet/scriptcenter/default.mspx
et plus particulièrement :
http://www.microsoft.com/technet/scriptcenter/scripts/os/version/ostveb02.mspx


PS : je viens de voir que cela ne fonctionne pas sous 95 :-(
Probablement à cause de l'utilisation de WMI (je laisse la parole aux
spécialistes la dessus)
Bon, si ça plante tu sauras que tu es sous 95, 3.1 ou DOS !

--
Fred

Avatar
Jean-Claude BELLAMY
Dans le message news: ,
Thierry s'est ainsi exprimé:

Bonjour,

Je recherche la commande permettant de tester dans un script (Vbs)
l'OS de la station.
If "%OS%" dans un script ... je n'ai rien trouvé dans le forum.
Ce script devra s'exécuter aussi bien sur des stations 9x,XP ou 2000.



P.ex. ainsi :

Version fichier batch (.BAT ou .CMD)
-----------------------------------

@echo off
if %OS%.==. goto Win9x
...
for /F "tokens=5 delims=] " %%v in ('ver') do set version=%%v
if %version%==5.00.2195 goto W2k
if %version%==5.1.2600 goto XP
...
:Win9x
...
goto suite
:W2k
...
goto suite
:XP
...
goto suite
...
:suite
...


NB: attention, ça ne marche pas avec W2K3, dans lequel la commande "ver"
renvoie un mot de moins !
Dans ce cas, il faut ajouter un test :

@echo off
if %OS%.==. goto Win9x
...
for /F "tokens=5 delims=] " %%v in ('ver') do set version=%%v
if %version%.==. for /F "tokens=4 delims=] " %%v in ('ver') do set
version=%%v
if %version%==5.00.2195 goto W2k
if %version%==5.1.2600 goto XP
if %version%==5.2.3790 goto W2K3
...
:Win9x
...
goto suite
:W2k
...
goto suite
:XP
...
goto suite
:W2K3
...
:suite
...



Version VBS :
-------------

On error resume Next
Set shell = WScript.CreateObject("WScript.Shell")
K1="HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows"
K2="CurrentVersionProductName"
KeyVer=K1 & " NT" & K2
PN=shell.RegRead(KeyVer)
If Err <>0 Then ' On est sous Win9x/ME
Err.Clear
KeyVer=K1 & K2
PN=shell.RegRead(KeyVer)
End If
wscript.echo "Version de Windows : " & PN



PN vaut, suivant le cas :
(script testé en vrai sur chacune de ces versions)
Microsoft Windows 98
Microsoft Windows 2000
Microsoft Windows XP
Microsoft Windows Serveur 2003

çà ne marche pas avec NT4, car l'entrée "ProductName" n'existe pas.
Il faut alors tester l'entrée "CurrentVersion", qui vaut :
4.0 (NT 4)
5.0 (W2K)
5.1 (XP)
5.2 (W2K3)
Donc il faut remplacer
K2="CurrentVersionProductName"
par
K2="CurrentVersionCurrentVersion"

Mais cela n'existe pas sous Win9x/ME ...





--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
*

Avatar
Jean-Claude BELLAMY
Dans le message news: ,
Fred s'est ainsi exprimé:

Dans son message
Thierry nous dit :

Bonjour,

Je recherche la commande permettant de tester dans un script (Vbs)
l'OS de la station.
If "%OS%" dans un script ... je n'ai rien trouvé dans le forum.
Ce script devra s'exécuter aussi bien sur des stations 9x,XP ou 2000.

Merci d'avance ...


Bonsoir,
Pour toutes ces petites tâches courantes une seule adresse : le script
center
http://www.microsoft.com/technet/scriptcenter/default.mspx
et plus particulièrement :
http://www.microsoft.com/technet/scriptcenter/scripts/os/version/ostveb02.mspx


PS : je viens de voir que cela ne fonctionne pas sous 95 :-(
Probablement à cause de l'utilisation de WMI (je laisse la parole aux
spécialistes la dessus)
WMI est installé d'origine sous Windows ME, Windows 2000, Windows XP et

Windows 2003.


Donc sous Win95, il faut l'installer :
http://download.microsoft.com/download/platformsdk/wmi9x/1.5/W9X/EN-US/wmi9x.exe


NB: Il faut un Win95 OSR2 ou avec IE 4.0 au minimum
Sinon il faut installer DCOM :
http://www.microsoft.com/downloads/details.aspx?familyid×a4de78-81a9-4db7-beb6-84ff99342172&displaylang=en
(qui n'est plus supporté)


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
*


Avatar
Jonathan Bismuth
Outre les versions du grand maître JCB, tu trouvera aussi la version AutoIT
qui ressemble à ceci :

;--------- Debut---------------------
$Version = @OSVersion
$Build =@OSBuild

If $Version <> "WIN_XP" Then
MsgBox (0, "OS", $Version)
ElseIf $Version = "WIN_XP" Then
If $build < "5.2.3790" then
MsgBox (0, "OS", $Version)
else
MsgBox (0, "OS", "WIN_2003")
EndIf
EndIf
;--------- Fin--------------------------

Cordialement,
--
Jonathan BISMUTH
MCSE 2000/ADSI-AutoIT Scripter
Transcript (ID: 691839, code: MCSE2000)
www.portail-mcse.net
pour me contacter http://cerbermail.com/?z5pCI2OyS6

"Thierry" a écrit dans le message de
news:
Bonjour,

Je recherche la commande permettant de tester dans un script (Vbs) l'OS de
la station.
If "%OS%" dans un script ... je n'ai rien trouvé dans le forum.
Ce script devra s'exécuter aussi bien sur des stations 9x,XP ou 2000.

Merci d'avance ...



Avatar
Thierry
Merci à tous pour votre aide



Outre les versions du grand maître JCB, tu trouvera aussi la version AutoIT
qui ressemble à ceci :

;--------- Debut---------------------
$Version = @OSVersion
$Build =@OSBuild

If $Version <> "WIN_XP" Then
MsgBox (0, "OS", $Version)
ElseIf $Version = "WIN_XP" Then
If $build < "5.2.3790" then
MsgBox (0, "OS", $Version)
else
MsgBox (0, "OS", "WIN_2003")
EndIf
EndIf
;--------- Fin--------------------------

Cordialement,
--
Jonathan BISMUTH
MCSE 2000/ADSI-AutoIT Scripter
Transcript (ID: 691839, code: MCSE2000)
www.portail-mcse.net
pour me contacter http://cerbermail.com/?z5pCI2OyS6

"Thierry" a écrit dans le message de
news:
Bonjour,

Je recherche la commande permettant de tester dans un script (Vbs) l'OS de
la station.
If "%OS%" dans un script ... je n'ai rien trouvé dans le forum.
Ce script devra s'exécuter aussi bien sur des stations 9x,XP ou 2000.

Merci d'avance ...