Windows activation is designed to be as foolproof as possible, so Microsoft’s graphical tools keep it simple. If you want to do something more advanced like remove a product key, force an online activation, or extend the activation timer, you’ll need Slmgr.vbs.
This command line tool is included with Windows, and provides options unavailable in the standard activation interface provided on the Update & Security > Activation screen in the Settings app.
To use this tool, you’ll want to launch a Command Prompt with Administrator access. To do so on Windows 8 or 10, either right-click the Start button or press Windows+X. Click the “Command Prompt (Admin)” option in the menu that appears. On Windows 7, search the Start menu for “Command Prompt,” right-click it, and select “Run as Administrator.”
Note: If you see PowerShell instead of Command Prompt on the Power Users menu, that’s a switch that came about with the Creators Update for Windows 10. It’s very easy to switch back to showing the Command Prompt on the Power Users menu if you want, or you can give PowerShell a try. You can do pretty much everything in PowerShell that you can do in Command Prompt, plus a lot of other useful things.
To display very basic license and activation information about the current system, run the following command. This command tells you the edition of Windows, part of the product key so you can identify it, and whether the system is activated.
slmgr.vbs /dli
To display more detailed license information–including the activation ID, installation ID, and other details–run the following command:
slmgr.vbs /dlv
View the License Expiration Date:-
To display the expiration date of the current license, run the following command. This is only useful for Windows system activated from an organization’s KMS server, as retail licenses and multiple activation keys result in a perpetual license that won’t expire. If you haven’t provided a product key at all, it’ll give you an error message.
slmgr.vbs /xpr
You can remove the product key from your current Windows system with Slmgr. After you run the below command and restart your computer, the Windows system won’t have a product key and will be in an unactivated, unlicensed state.
If you installed Windows from a retail license and would like to use that license on another computer, this allows you to remove the license. It could also be useful if you’re giving that computer away to someone else. However, most Windows licenses are tied to the computer they came with–unless you purchased a boxed copy.
To remove uninstall the current product key, run the following command and then restart your computer:
slmgr.vbs /upk
Windows also stores the product key in the registry, as it’s
sometimes necessary for the key to be in the registry when setting
up the computer. If you’ve uninstalled the product key, you should run
the below command to ensure it’s removed from the registry as well.
This will ensure people who use the computer in the future can’t grab
the product key.
Running this command alone won’t uninstall your product key. It’ll
remove it from the registry so programs can’t access it from there,
but your Windows system will remain licensed unless you run the
above command to actually uninstall the product key. This option is
really designed to prevent the key from being stolen by malware, if
malware running on the current system gains access to the registry.
slmgr.vbs /cpky
You can use slmgr.vbs to enter a new product key. If the Windows
system already has a product key, using the below command will
silently replace the old product key with the one you provide.
Run the following command to replace the product key, replacing
#####-#####-#####-#####-##### with the product key. The
command will check the product key you enter to ensure it’s valid
before using it. Microsoft advises you restart the computer after
running this command.
You can also change your product key from the Activation screen in
the Settings app, but this command lets you do it from the command
line.
slmgr.vbs /ipk #####-#####-#####-#####-#####
To force Windows to attempt an online activation, run the following
command. If you’re using a retail edition of Windows, this will force
Windows to attempt online activation with Microsoft’s servers. If the
system is set up to use a KMS activation server, it will instead
attempt activation with the KMS server on the local network. This
command can be useful if Windows didn’t activate due to a
connection or server problem and you want to force it to retry.
Slmgr also allows you to perform an offline activation. To get an installation ID for oine activation, run the following command:
slmgr.vbs /dti
You’ll now need to get a a confirmation ID you can use to activate the
system over the phone. Call the Microsoft Product Activation
Center, provide the installation ID you received above, and you’ll be
given an activation ID if everything checks out. This allows you to
activate Windows systems without Internet connections.
To enter the confirmation ID you’ve received for offline activation, run
the following command. Replace “ACTIVATIONID” with the activation
ID you’ve received.
slmgr.vbs /atp ACTIVATIONID
Once you’re done, you can use the slmgr.vbs /dli or slmgr.vbs /dlv
commands to conrm you’re activated.
This can generally be done from the Activation screen in the Settings
app if your PC isn’t activated–you don’t have to use the command if
you’d rather use the graphical interface.
Some Windows systems provide a limited time where you can use
them as free trials before entering a product key. For example,
Windows 7 offers a 30-day trial period before it begins complaining
at you. To extend this trial period and reset it back to 30 days
remaining, you can use the following command.As Microsoft’s
documentation puts it, this command “resets the activation timers.”
This command can only be used several times, so you can’t
indefinitely extend the trial. The number of time it can be used
depends on the “rearm count,” which you can view using the
slmgr.vbs /dlv command. It seems different on different versions of
Windows–it was three times on Windows 7, and it seems to be five
times on Windows Server 2008 R2.
This no longer seems to work on Windows 10, which is very lenient if
you don’t provide it a product key anyway. This option still works on
older versions of Windows and may continue to work on
other editions of Windows, such as Windows Server, in the future.
slmgr.vbs /rearm
Slmgr normally performs the actions you specify on the current
computer. However, you can also remotely administer computers on
your network if you have access to them. For example, the first
command below applies to the current computer, while the second
one will be run on a remote computer. You’ll just need the computer’s
name, username, and password.
slmgr.vbs /option
slmgr.vbs computername username password /option
The Slmgr.vbs command has other options, which are useful for
dealing with KMS activation and token-based activation. Consult
Microsoft’s Slmgr.vbs documentation for more details.
Slmgr Commands
The above examples are fairly basic and should be the only ones most people needs to use. However, if you require more advanced options, take a look at the slmgr command syntax and the other supported options.
slmgr [MachineName [username [password]]] [option]
Slmgr Command Options
Item
Explanation
MachineName
The machine to administer. Defaults to the local machine if omitted.
username
The username of an administrator account on the remote machine.
password
The password for username.
/ato
Activate Windows license and product key against Microsoft's server.
/atp Confirmation_ID
Activate the product with a user-provided Confirmation_ID.
/cdns
Disable DNS publishing by the KMS host.
/ckhc
Disable KMS host caching.
/ckms
Clear the name of KMS server used to default and port to default.
/cpky
Delete the Windows product key from Windows Registry.
/cpri
Set the KMS priority to low.
/dli
Display the current license information with activation status and partial product key.
/dlv
Display additional license information. Similar to /dli but more detailed.
/dti
Display Installation ID for offline activation.
/ipk key
Change the Windows product key. Replaces the current product key if present.
/ilc file
Install a license file.
/rilc
Reinstall system license files.
/rearm
Reset the evaluation period/licensing status and activation state of the computer. Use /rearm-app to specify an app, or /rearm-sku for a specific sku.
/skms
Set the Volume Licensing KMS server and/or the port used for KMS activation.
/skhc
Enable KMS host caching (enabled by default). This blocks the use of DNS priority and weight after the initial discovery of a working KMS host.
/sai interval
Sets the interval in minutes for unactivated clients to attempt KMS connection.
/spri
Set the KMS priority to normal (default).
/sprt port
Set the port on which the KMS host listens for client activation requests (default TCP port is 1688).
/sdns
Enable DNS publishing by the KMS host (default).
/upk
Uninstall the currently installed Windows product key and return the license status back to a trial state.
/xpr
Show the expiry date of the current license or indicate whether activation is permanent.