Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have put together a robust HP Warrant Lookup PowerShell script. However, I cannot figure out how to get a HP system's product number in an automated process. So...

How can I get HP product number (not the serial number) via PowerShell? Although I would like to do with only built-in out-of-the-box Windows and PowerShell commands, I am open to other ideas. In the end, the ultimate goal is retrieve the product number in the most reliable and least invasive way possible (i.e. installing 3rd software).

Troubleshooting

Tried:

Get-WmiObject Win32_ComputerSystem | Select-Object OEMStringArray

Result:

{ABS 70/71 79 7A 7B 7C, CMS v01.4A, HP_Mute_LED_0, www.hp.com}

... But expecting to find XT908UT#ABA

share|improve this question
    
Is the product number you were expecting listed when running either of the following commands? wmic csproduct list /format:list / wmic computersystem list /format:list –  and31415 Feb 8 at 15:36
    
Nope. I am pretty sure it's stored in SMBios, but I don't know a reliable way to retrieve it. –  SgtOJ Feb 8 at 21:56
    
This article says that the number is in the registry at HKLM\HARDWARE\DESCRIPTION\System\BIOS\SystemSKU so can be retrieved in PowerShell. This one says wmic /namespace:\\root\wmi path MS_SystemInformation. Does any of these work for you? –  harrymc Feb 10 at 20:56
    
On a Dell computer I can use Get-WmiObject Win32_BIOS | Select-Object SerialNumber (I have no HP to test this on). –  harrymc Feb 10 at 21:22
    
@harrymc - Looks like the registry and MS_SystemInformation is a go! Thanks, you should post it answer answer. I am disappointed in myself because I did come across the same article (registry method) but blew it off. –  SgtOJ Feb 10 at 23:16

1 Answer 1

up vote 2 down vote accepted
+250

Here are some methods that work for various computer models.

Method 1 : Registry

The HP product number is in the registry so can be retrieved in PowerShell HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\BIOS item SystemSKU.

More information and script can be found in the article :
How to: Find the HP Product Number of all your HP server using powershell.

Method 2 : root\wmi – MS_SystemInformation

Class MS_SystemInformation contains the product number in its member SystemSKU.
(Presumably it gets it from the registry as in the first method.)

For more info see Richard Siddaway's Blog.

Method 3 : Class Win32_BIOS

The following fragment finds the product number for some computer makes. Tested on Dell.

Get-WmiObject Win32_BIOS | Select-Object SerialNumber

The Microsoft reference information is found in the article Win32_BIOS class.

share|improve this answer
    
The Win32_BIOS class does have the serial number, but that's different than HP's product number (P/N). Which I have recently discovered is call System SKU by Microsoft and Product SKU by SMBios. The registry and MS_SystemInformation class does store this P/N I am looking for. –  SgtOJ Feb 11 at 9:52

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.