- Type de disque dur et version Windows 10
- Cloner disque dur - Guide
- Defragmenter disque dur - Guide
- Test disque dur - Télécharger - Informations & Diagnostic
- Clé d'activation windows 10 - Guide
- Chkdsk disque dur externe - Guide
2 réponses
Bonjour,
La même commande, je ne sais pas, rien n'interdit de chaîner les boucles mais au prix d'une écriture complexe, je n'utilise à cet effet pas PowerShell mais wmic dans un batch.
Le script va probablement échouer si les OS sont lettrés ailleurs que sur C: et sûrement en présence de plusieurs SSD et HDD, il ne retourne pas le nom de la version (22H2) mais son numéro (10.0.1945 pour build 19045.2251).
:SSD
FOR /F "skip=1 tokens=1 delims=" %%H in ('2^>nul wmic /NameSpace:\\root\Microsoft\Windows\Storage Path MSFT_PhysicalDisk Where "MediaType=4" Get Model ^| FINDSTR .') do SET ssd=%%G
:HDD
FOR /F "skip=1 tokens=1 delims=" %%H in ('2^>nul wmic /NameSpace:\\root\Microsoft\Windows\Storage Path MSFT_PhysicalDisk Where "MediaType=3" Get Model ^| FINDSTR .') do SET hd=%%H
FOR /F "tokens=2 delims='='" %%A in ('wmic os get Name /value') do SET osname=%%A
FOR /F "tokens=1 delims='|'" %%A in ("%osname%") do SET osname=%%A
FOR /F "tokens=4" %%A in ('systeminfo ^| find "Version du système"') do SET osversion=%%A
echo HD SUR C: %hd%
echo SSD SUR C: %ssd%
echo OS: %osname%
echo Version: %osversion%
Bonjour,
Merci pour ta réponse ! Je vais tenter wmic demain... A ma connaissance, tous les OS ont été lettrés sur C: avant mon arrivée. Merci encore pour ton script, je vais analyser cela de plus près et je te tiens au courant.
Cordialement
J'ai eu un doute, j'avais recopié au kilomètre sans tester, je n'ai pas de SSD, Pan sur mon bec:
A l'étiquette :SSD il ne faut bien sûr pas lire %%H mais %%G.
Le résultat sort sous la forme:
HD SUR C: WDC WD10JPVX-60JC3T1
SSD SUR C:
OS: Microsoft Windows 10 Famille
Version: 10.0.19045
où ce qui suit HD (ou SSD) est le modèle du disque s'il existe.
Formellement parlant, le MediaType 4 va rendre TOUS les SSD, idem pour 3 pour les HDD (2 s'ils sont amovibles): en présence de plusieurs disques (du même type ou de types différents), ne m'en sera rendue que l'existence, et pour lever l'ambiguïté du disque système, je peux boucler sur tous les disques en y cherchant un fichier ou dossier qui ne peut en principe se trouver que sur le lecteur système, par exemple chercher le dossier "SysWOW64" qui n'existe que sous \Windows en 64 bits, ou bien simplement rendre l'écho de %windir% qui me rend C:\Windows dans le cas général mais par exemple E:\Windows dans le cas d'un montage exotique (double boot...), puisque tout est possible, de mémoire seul Ms Dos revendiquant forcément C:
Le numéro de version ne peut être rapproché du code de version que via la table de correspondance idoine:
https://lecrabeinfo.net/toutes-les-versions-de-windows-10.html
Si on veut l'obtenir directement (22H2), il n'y a pas d'autre solution à ma connaissance que PowerShell:
$ver = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name DisplayVersion).DisplayVersion
Voir ici pour rechercher sur l'ensemble d'un AD:
https://ss64.com/nt/ver.html
qu'on peut intégrer à un batch, mais on a alors plus vite fait de tout faire en PowerShell en ramenant le nom du disque et son type:
Get-PhysicalDisk | Select FriendlyName, MediaType
Le nom du poste, que j'avais oublié, est ramené facilement via par exemple %computername%