Afin de récupérer le numéro de série du HDD, j'utilise cette commande DOS.
Code : Tout sélectionner
wmic path Win32_DiskDrive get SerialNumber
RunWait(@comSpec & ' /c' & ' wmic path Win32_DiskDrive get SerialNumber > ' & @TempDir & "\serial.txt","",@SW_HIDE)
$file = FileOpen(@TempDir & "\serial.txt",0)
$serial= FileReadLine($file,2)
FileClose($file)
FileDelete(@TempDir & "\serial.txt")
$file = FileOpen(@TempDir & "\serial.txt",0)
$serial= FileReadLine($file,2)
FileClose($file)
FileDelete(@TempDir & "\serial.txt")
#include <Constants.au3>
$cmd = @ComSpec & " /c"&" wmic path Win32_DiskDrive get SerialNumber"
$pid = Run($cmd, Default, @SW_HIDE,$STDOUT_CHILD)
$line = StdoutRead($pid)
ProcessWaitClose($pid)
MsgBox(0, "STDOUT read:", $line)
$cmd = @ComSpec & " /c"&" wmic path Win32_DiskDrive get SerialNumber"
$pid = Run($cmd, Default, @SW_HIDE,$STDOUT_CHILD)
$line = StdoutRead($pid)
ProcessWaitClose($pid)
MsgBox(0, "STDOUT read:", $line)
Je sais qu'il me manque un truc mais je ne sais pas ce que c'est. C'est comme le ">" du premier code, si on l'oublie le fichier texte ne sera pas crée.