Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (2024)

In this article, we’ll show how to make sure your Windows copy is activated on the computer and check the Windows activation status from all computers in your Active Directory domain network using PowerShell.

Contents:

  • How to Check If Windows Is Activated?
  • Check Windows Activation Using PowerShell
  • Get Windows Activation Status on AD Computers with PowerShell

How to Check If Windows Is Activated?

First of all, let’s look at how to check the Windows activation status on your computer. You can view the Windows activation status using the Settings app (in modern Windows 10 and Windows 11 builds).

  • On Windows 10 and Windows Server 2022/2019/2016, go to Settings -> Update & Security -> Activation (or run the ms-settings:activation URI command to access the ms-settings quickly)
  • In Windows 11, open Settings -> System -> Activation

Today Microsoft offers to upgrade from the latest Windows 10 builds to Windows 11 for free. If a computer with a digital Windows 10 license is registered in your Microsoft account, then after upgrading to Windows 1 the computer will automatically check the digital license and activate Windows.

You may see one of the following activation statuses:

  • Windows is activated using your organization’s activation service – it means that your Windows copy is activated on a corporate KMS server (FAQ on KMS Activation); Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (1)
  • Windows is activated with a digital license – your Windows copy is activated using a digital license that is not linked to a Microsoft user account; Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (2)
  • Windows is activated with a digital license linked to your Microsoft account
  • Not Activated – Windows reported that no product key was found on your device. Error code: 0xC004F214 – Windows is installed without a product key and is not activated.

You can get Windows activation from a command prompt. To do it, use the SLMgr.vbs script, which allows managing Windows licenses and activation. Run the command prompt (cmd) as an administrator and enter the command below:

slmgr /xpr

Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (3)

In some seconds a window with “The machine is permanently activated” message appears.

If Windows is not activated, you will see the message: Windows is in Notification mode.

Tip. If you want to display the activation status in the command prompt console, use this command:

cscript slmgr.vbs -xpr

Check Windows Activation Using PowerShell

You can use PowerShell to get Windows activation information on a local or remote computer. Run the following command to get data from CIM (WMI):

Get-CimInstance SoftwareLicensingProduct -Filter "Name like 'Windows%'" | where { $_.PartialProductKey } | select Description, LicenseStatus

Possible LicenseStatus values:

  • 0 – Unlicensed
  • 1 – Licensed
  • 2 – OOBGrace
  • 3 – OOTGrace – the computer configuration has been changed, and it cannot be activated automatically, or more than 180 days passed
  • 4 – NonGenuineGrace
  • 5 – Notification – Windows trial period is over
  • 6 – ExtendedGrace (you can extend the Windows evaluation period several times using the slmgr /rearm command or convert the evaluation to a full version)

The screenshot below shows that LicenseStatus = 1. It means that Windows is activated using a retail product key (Windows(R) Operating System, RETAIL channel).

Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (4)

To get an activation status of a remote computer, specify its name in the -ComputerName parameter:

Get-CimInstance SoftwareLicensingProduct -Filter "Name like 'Windows%'" -ComputerName mun-srv03 |where { $_.PartialProductKey } | select Description, LicenseStatus

The VOLUME_KMSCLIENT channel string means that the computer is activated on the KMS server.

Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (5)

Or use Enter-PSSession or Invoke-Command WinRM cmdlets to access a remote computer.

Get Windows Activation Status on AD Computers with PowerShell

You can use PowerShell to remotely get the activation statuses of Windows desktop computers and Windows Server hosts in an Active Directory domain. You can see an example of the script below.

To get a list of computers in a domain, the Get-ADComputer cmdlet from the Active Directory for PowerShell module is used. This PowerShell script checks the availability of each computer in Active Directory in turn (a simple ICMP ping using Test-NetConnection), gets a build and version of the OS installed on them and Windows activation status.

enum Licensestatus{
Unlicensed = 0
Licensed = 1
Out_Of_Box_Grace_Period = 2
Out_Of_Tolerance_Grace_Period = 3
Non_Genuine_Grace_Period = 4
Notification = 5
Extended_Grace = 6
}
$Report = @()
$ADComps = Get-ADComputer -Filter {enabled -eq "true" -and OperatingSystem -Like '*Windows*'}
Foreach ($comp in $ADComps) {
If ((Test-NetConnection $comp.name -WarningAction SilentlyContinue).PingSucceeded -eq $true){
$activation_status= Get-CimInstance -ClassName SoftwareLicensingProduct -ComputerName $comp.name -Filter "Name like 'Windows%'" |where { $_.PartialProductKey } | select PSComputerName, @{N=’LicenseStatus’; E={[LicenseStatus]$_.LicenseStatus}}
$windowsversion= Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName $comp.name| select Caption, Version
$objReport = [PSCustomObject]@{
ComputerName = $activation_status.PSComputerName
LicenseStatus= $activation_status.LicenseStatus
Version = $windowsversion.caption
Build = $windowsversion.Version
}
}
else {
$objReport = [PSCustomObject]@{
ComputerName = $comp.name
LicenseStatus = "Computer offline"
}
}
$Report += $objReport
}
$Report |Out-GridView

The information about Windows activation status on domain computers is shown in the form of an Out-GridView table. Or you can export it to a CSV file (Export-Csv -Path .\ad_windows_activation_report.csv -NoTypeInformation).

Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (6)

You can find a similar PowerShell script to check Microsoft Office activation status on domain computers.

Thus, you can quickly find all non-activated (unlicensed) copies of Windows on computers in your domain.

Checking Windows Activation Status on Active Directory Computers | Windows OS Hub (2024)
Top Articles
Latest Posts
Article information

Author: Msgr. Refugio Daniel

Last Updated:

Views: 5909

Rating: 4.3 / 5 (74 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Msgr. Refugio Daniel

Birthday: 1999-09-15

Address: 8416 Beatty Center, Derekfort, VA 72092-0500

Phone: +6838967160603

Job: Mining Executive

Hobby: Woodworking, Knitting, Fishing, Coffee roasting, Kayaking, Horseback riding, Kite flying

Introduction: My name is Msgr. Refugio Daniel, I am a fine, precious, encouraging, calm, glamorous, vivacious, friendly person who loves writing and wants to share my knowledge and understanding with you.