[Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 940
  • Last Modified:

How can I determine the version of Windows XP from a product key?

Very often I must perform a repair install or clean install of Windows XP without knowing which version it is. Obviously, I know if it is Home or Pro or MCE2002 or MCE2005, but I often don't know if it is OEM, retail, corporate (open license), or a special Dell/HP/Sony-specific one that I occasionally encounter. If the XP sticker is on the computer it's usually OEM, but otherwise I don't know how to tell which version it is. If I use the wrong version of Home or Pro to perform a repair install or clean install, then obviously the product key doesn't work with that installation. How can one tell, from the product key or otherwise, EXACTLY which version of XP is installed on a machine?

Thanks.
0
NRTCF
Asked:
NRTCF
4 Solutions
 
mrmarkfuryCommented:
Go to start->run->winver.exe
0
 
mrmarkfuryCommented:
Forgot to add this:

You can right click My Computer, go to properties, and it should tell you if the version of XP is Home or Pro

This might also help:
http://episteme.arstechnica.com/eve/forums/a/tpc/f/99609816/m/360007140831
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
mrmarkfuryCommented:
This may also help deciphering the Product ID
http://wiki.lunarsoft.net/wiki/Product_IDs
0
 
jss1199Commented:
Fun.

If you right click "My Computer" and select "Properties" you will notice a code that looks like xxxxx-xxx-xxxxxxx-xxxxx in the "Registered to:" section - this is the product key and can tell you the SKU and channel (e.g., if it is Pro, Home, Upgrade, OEM, SLP, VLK, etc.) The first block is your SKU, the second is your channel.

For example, a 55274 at the start means you are XP Pro. 55277 is Home. 76487 is MediaCenter 2005. For the second set of numbers, OEM is .. well.. OEM. 335 is Retail. 640 is VLK.  See list of known SKU and Channels below.

SKU
55274 : XP Pro generic OEM
55276 : XP Pro (upgrade)
55276 : XP Home (?)
55277 : XP Home generic OEM
55285 : XP Pro
55661 : XP Pro (retail)
76475 : XP Home (upgrade) (?)
76477 : XP Home Royalty OEM
76481 : XP Pro Dell OEM
76487 : XP Media Center Edition 2005
76487 : XP Pro Royalty OEM
76487 : XP Pro SP2 (retail)
76487 : XP Pro volume license (with '640' channel ID)
76500 : XP MCE 2005 (which is XP Pro with no domain capability)
76588 : XP Pro x64 OEM

Channel
000 : Other (includes some retail, upgrade and evaluation versions)
006 : MS or Partner promotions ("Go Pro" Promotion)
007 : FIXME : Retail
009 : Not for resale - bundle
011 : Upgrade (XP Home?)
083 : Windows Genuine Advantage
OEM : OEM (This does not specify royalty or normal OEM)
270 : Volume License
296 : MSDN
308/347 : Microsoft Action Pack subscription
335 : Retail
640 through 652 : Volume License (usually generated via 270 CID in setupp.ini)
699 : Volume Windows XP Tablet Edition
071 : FIXME : Unknown.
0
 
NRTCFAuthor Commented:
Perfect, jss1199! Is there any way to discern this if I cannot login to the computer? For example if the hard drive is dying and all I can do is plug the hard drive into another computer and browse the contents?
0
 
mrmarkfuryCommented:
Use this: http://www.nirsoft.net/utils/product_cd_key_viewer.html

Navigate to the program in the command line (Start->Run->cmd) and type the following:
produkey.exe /regfile "D:\WINDOWS\system32\config\software"
Change D: with the slave drives letter
0
 
☠ MASQ ☠Commented:
You could slave the HDD of the machine you are repairing to another PC and then use Regedit to load the hive from the slave's HKLM (Don't forget to unload when you've finished!) You'll find the Windows Product Key at:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProductID
0
 
jss1199Commented:
In that case, the registry is your best bet as another poster commented.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProductID
 
If the computer is alive, you can run the below code.  Easily modifiable to pull from a remote machine.
 
 
 

'==========================================================================
' NAME: GetCDKeyandSerialNumber.vbs
'
' AUTHOR: Mark D. MacLachlan , The Spider's Parlor
' URL: http://www.thespidersparlor.com
' DATE  : 3/16/2006
' (C) 2006, All Rights Reserved
'
' COMMENT:
'
'==========================================================================
Set WshShell = CreateObject("wscript.Shell")
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set env = WshShell.environment("Process")
strComputer = env.Item("Computername")
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Const HKEY_LOCAL_MACHINE = &H80000002
Const UnInstPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_
".\root\default:StdRegProv")
strDigitalProductId="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId"
strXPKey=GetKey(WshShell.RegRead(strDigitalProductId))
Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem",,48)
For Each objItem in colItems
    report = report &  "Original CD Key:"& strXPKey & vbCrLf
    report = report &  "SerialNumber: " & objItem.SerialNumber & vbCrLf
Next
MsgBox report
Function GetKey(rpk)
 
Const rpkOffset=52:i=28
szPossibleChars="BCDFGHJKMPQRTVWXY2346789"
 
Do 'Rep1
dwAccumulator=0 : j=14
  Do
  dwAccumulator=dwAccumulator*256
  dwAccumulator=rpk(j+rpkOffset)+dwAccumulator
  rpk(j+rpkOffset)=(dwAccumulator\24) and 255  
  dwAccumulator=dwAccumulator Mod 24
  j=j-1
  Loop While j>=0
i=i-1 : szProductKey=mid(szPossibleChars,dwAccumulator+1,1)&szProductKey
  if (((29-i) Mod 6)=0) and (i<>-1) then
  i=i-1 : szProductKey="-"&szProductKey
  End If
Loop While i>=0 'Goto Rep1
 
GetKey=szProductKey
End Function

Open in new window

0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now