18

I'm doing a hard drive upgrade and it might ask me for the product key again. How can I find it?

18

Either the sticker that came with your machine and/or on the media case.

You can also try Nirsoft ProduKey for a software way.

| improve this answer | |
  • Windows 7 comes on DVDs. CDs as a distribution means for Windows Operating Systems are a thing from the past. :) – Molly7244 Dec 26 '09 at 17:58
  • Oh come on!... But true I suppose! – William Hilsum Dec 26 '09 at 18:17
  • 3
    Magic Jellybean FTW! – atroon Dec 26 '09 at 21:22
  • 2
    Magic Jelly Bean is awesome. It instantly shows me the product key for Windows 7 as well as the other Microsoft products installed on my system. – Phenom Dec 27 '09 at 1:21
  • 1
    Just watch out for its installer trying to install some crapware browser toolbar and mess with your default homepage. – Piku May 31 '13 at 14:02
8

Product Key Finder is a free tool that will display the installed Windows Product Key and other important Windows system information. Product Key Finder works with the following Windows operating systems (2000, 2003, XP, Vista, 2008, 7), 32-bit and 64-bit.

Find alternative methods here:

How To Find the Windows 7 Product Key Code

You may also want to backup your Windows activation files:

How to Backup and Restore Windows 7 and Server 2008 R2 Activation Status

| improve this answer | |
  • 1
    ottsolutions' "Product Key Finder" is nice because it doesn't need to be installed, and doesn't install any crapware either. – mivk Jan 27 '14 at 12:46
2

This short PowerShell script by Winaero can be used.

See the blog post for step-by-step instructions if you're not familiar with PowerShell.

function Get-WindowsKey {
    ## Function to retrieve the Windows Product Key from any PC
    ## by Jakob Bindslet (jakob@bindslet.dk)
    param ($targets = ".")
    $hklm = 2147483650
    $regPath = "Software\Microsoft\Windows NT\CurrentVersion"
    $regValue = "DigitalProductId"
    Foreach ($target in $targets) {
        $productKey = $null
        $win32os = $null
        $wmi = [WMIClass]"\\$target\root\default:stdRegProv"
        $data = $wmi.GetBinaryValue($hklm,$regPath,$regValue)
        $binArray = ($data.uValue)[52..66]
        $charsArray = "B","C","D","F","G","H","J","K","M","P","Q","R","T","V","W","X","Y","2","3","4","6","7","8","9"
        ## decrypt base24 encoded binary data
        For ($i = 24; $i -ge 0; $i--) {
            $k = 0
            For ($j = 14; $j -ge 0; $j--) {
                $k = $k * 256 -bxor $binArray[$j]
                $binArray[$j] = [math]::truncate($k / 24)
                $k = $k % 24
            }
            $productKey = $charsArray[$k] + $productKey
            If (($i % 5 -eq 0) -and ($i -ne 0)) {
                $productKey = "-" + $productKey
            }
        }
        $win32os = Get-WmiObject Win32_OperatingSystem -computer $target
        $obj = New-Object Object
        $obj | Add-Member Noteproperty Computer -value $target
        $obj | Add-Member Noteproperty Caption -value $win32os.Caption
        $obj | Add-Member Noteproperty CSDVersion -value $win32os.CSDVersion
        $obj | Add-Member Noteproperty OSArch -value $win32os.OSArchitecture
        $obj | Add-Member Noteproperty BuildNumber -value $win32os.BuildNumber
        $obj | Add-Member Noteproperty RegisteredTo -value $win32os.RegisteredUser
        $obj | Add-Member Noteproperty ProductID -value $win32os.SerialNumber
        $obj | Add-Member Noteproperty ProductKey -value $productkey
        $obj
    }
}
| improve this answer | |
  • 1
    That should be the accepted answer! Simple and no extra tools required! – andreee Jun 2 '18 at 12:28
1

Belarc Advisor.

Download, install, run it, then it opens a page in your web browser displaying all kinds of facts and statistics about your PC...near the bottom, it has all the product keys, etc for all the install software, and, of course, the operating system...Hope that helps!

| improve this answer | |

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