[..] ProcessorID est-il fiable?
Posté : ven. 22 mai 2015 18:56
par parazitenew
Bonsoir,
J'ai un programme que j'ai codé de sorte à s'activer en ligne et se lier à l'ordinateur via l'adresse MAC. Mais j'avais toujours dans l'idée de remplacer l'adresse MAC par une donnée unique qui concerne le processeur.
JE suis tombé sur ce script (généré par scriptomatic) sur le forum EN:
Vous pouvez l'essayer, il donne presque toutes les infos du CPU. Oui, presque, car il y a des champs qui restent vides comme par exemple le "UniqueId:" mais le ""ProcessorId: " s'affiche.
Alors j'aimerais savoir si cette donnée "ProcessorId: " peut être fiable, pour ce que je veux faire.
Merci.
J'ai un programme que j'ai codé de sorte à s'activer en ligne et se lier à l'ordinateur via l'adresse MAC. Mais j'avais toujours dans l'idée de remplacer l'adresse MAC par une donnée unique qui concerne le processeur.
JE suis tombé sur ce script (généré par scriptomatic) sur le forum EN:
► Afficher le texte
Code : Tout sélectionner
; Generated by AutoIt Scriptomatic
$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$strComputer = "localhost"
$Output=""
$Output = $Output & "Computer: " & $strComputer & @CRLF
$Output = $Output & "==========================================" & @CRLF
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Processor", "WQL", _
$wbemFlagReturnImmediately + $wbemFlagForwardOnly)
If IsObj($colItems) then
For $objItem In $colItems
$Output = $Output & "AddressWidth: " & $objItem.AddressWidth & @CRLF
$Output = $Output & "Architecture: " & $objItem.Architecture & @CRLF
$Output = $Output & "Availability: " & $objItem.Availability & @CRLF
$Output = $Output & "Caption: " & $objItem.Caption & @CRLF
$Output = $Output & "ConfigManagerErrorCode: " & $objItem.ConfigManagerErrorCode & @CRLF
$Output = $Output & "ConfigManagerUserConfig: " & $objItem.ConfigManagerUserConfig & @CRLF
$Output = $Output & "CpuStatus: " & $objItem.CpuStatus & @CRLF
$Output = $Output & "CreationClassName: " & $objItem.CreationClassName & @CRLF
$Output = $Output & "CurrentClockSpeed: " & $objItem.CurrentClockSpeed & @CRLF
$Output = $Output & "CurrentVoltage: " & $objItem.CurrentVoltage & @CRLF
$Output = $Output & "DataWidth: " & $objItem.DataWidth & @CRLF
$Output = $Output & "Description: " & $objItem.Description & @CRLF
$Output = $Output & "DeviceID: " & $objItem.DeviceID & @CRLF
$Output = $Output & "ErrorCleared: " & $objItem.ErrorCleared & @CRLF
$Output = $Output & "ErrorDescription: " & $objItem.ErrorDescription & @CRLF
$Output = $Output & "ExtClock: " & $objItem.ExtClock & @CRLF
$Output = $Output & "Family: " & $objItem.Family & @CRLF
$Output = $Output & "InstallDate: " & WMIDateStringToDate($objItem.InstallDate) & @CRLF
$Output = $Output & "L2CacheSize: " & $objItem.L2CacheSize & @CRLF
$Output = $Output & "L2CacheSpeed: " & $objItem.L2CacheSpeed & @CRLF
$Output = $Output & "LastErrorCode: " & $objItem.LastErrorCode & @CRLF
$Output = $Output & "Level: " & $objItem.Level & @CRLF
$Output = $Output & "LoadPercentage: " & $objItem.LoadPercentage & @CRLF
$Output = $Output & "Manufacturer: " & $objItem.Manufacturer & @CRLF
$Output = $Output & "MaxClockSpeed: " & $objItem.MaxClockSpeed & @CRLF
$Output = $Output & "Name: " & $objItem.Name & @CRLF
$Output = $Output & "OtherFamilyDescription: " & $objItem.OtherFamilyDescription & @CRLF
$Output = $Output & "PNPDeviceID: " & $objItem.PNPDeviceID & @CRLF
$strPowerManagementCapabilities = $objItem.PowerManagementCapabilities(0)
$Output = $Output & "PowerManagementCapabilities: " & $strPowerManagementCapabilities & @CRLF
$Output = $Output & "PowerManagementSupported: " & $objItem.PowerManagementSupported & @CRLF
$Output = $Output & "ProcessorId: " & $objItem.ProcessorId & @CRLF
$Output = $Output & "ProcessorType: " & $objItem.ProcessorType & @CRLF
$Output = $Output & "Revision: " & $objItem.Revision & @CRLF
$Output = $Output & "Role: " & $objItem.Role & @CRLF
$Output = $Output & "SocketDesignation: " & $objItem.SocketDesignation & @CRLF
$Output = $Output & "Status: " & $objItem.Status & @CRLF
$Output = $Output & "StatusInfo: " & $objItem.StatusInfo & @CRLF
$Output = $Output & "Stepping: " & $objItem.Stepping & @CRLF
$Output = $Output & "SystemCreationClassName: " & $objItem.SystemCreationClassName & @CRLF
$Output = $Output & "SystemName: " & $objItem.SystemName & @CRLF
$Output = $Output & "UniqueId: " & $objItem.UniqueId & @CRLF
$Output = $Output & "UpgradeMethod: " & $objItem.UpgradeMethod & @CRLF
$Output = $Output & "Version: " & $objItem.Version & @CRLF
$Output = $Output & "VoltageCaps: " & $objItem.VoltageCaps & @CRLF
if Msgbox(1,"WMI Output",$Output) = 2 then ExitLoop
$Output=""
Next
Else
Msgbox(0,"WMI Output","No WMI Objects Found for class: " & "Win32_Processor" )
Endif
Func WMIDateStringToDate($dtmDate)
Return (StringMid($dtmDate, 5, 2) & "/" & _
StringMid($dtmDate, 7, 2) & "/" & StringLeft($dtmDate, 4) _
& " " & StringMid($dtmDate, 9, 2) & ":" & StringMid($dtmDate, 11, 2) & ":" & StringMid($dtmDate,13, 2))
EndFunc
Alors j'aimerais savoir si cette donnée "ProcessorId: " peut être fiable, pour ce que je veux faire.
Merci.