В этой статье мы покажем, как проверить статус активации и тип лицензии Microsoft Office 2022/2019/2016 и Microsoft 365 (ex. Office 365) на компьютере. Вы можете проверить тип лицензии и статус активации прямо из графического интерфейса любого приложения MS Office, таки и узнать активирован ли Office на локальном или удаленном компьютере с помощью PowerShell.
Как узнать, активирован ли Microsoft Office на компьютере?
Проще всего проверить статус активации копии Microsoft Office 2021/2019/2016 или Microsoft 365 на вашем компьютере прямо из графического интерфейса. Отройте любое приложение MS (Word, Excel, PowerPoint, Outlook) и выберите File -> Account. Надпись Product Activated говорит о том, что ваша копия Office активирована. Если вы видите надпись Product Activation Required, значит вашу копию MS Office нужно активировать.
Детальную информации о типе и статусе активации Office можно из командной строки с помощью встроенного скрипта ospp.vbs. В зависимости от разрядности версии Office, перейдите в каталог установки:
- Office 32 бит (x86):
cd "c:\Program Files (x86)\Microsoft Office\Office16"
- Office 64 бит (x64
cd "C:\Program Files\Microsoft Office\Office16"
Проверьте статус активации Office:
cscript ospp.vbs /dstatus
Скрипт вернул следующую информацию:
- Корпоративная версия Office 2019 (
Office19ProPlus2019VL
) - Лицензияактивирована:
LICENSE STATUS: ---LICENSED—
- Активация выполнена на KMS сервере (
KMS machine name
)
Лицензия будет активна в течении – 173 дней (
REMAINING GRACE
). В случае доступности KMS сервера, лицензия автоматически продляется на 180 дней каждые 7 дней (FAQ по KMS активации).
PRODUCT ID: 00414-50000-00000-AA550 SKU ID: 85dd8b5f-eaa4-4af3-a628-cce9e77c9a03 LICENSE NAME: Office 19, Office19ProPlus2019VL_KMS_Client_AE edition LICENSE DESCRIPTION: Office 19, VOLUME_KMSCLIENT channel BETA EXPIRATION: 1601-01-01 LICENSE STATUS: ---LICENSED--- REMAINING GRACE: 173 days (249352 minute(s) before expiring) Last 5 characters of installed product key: 6MWKP Activation Type Configuration: ALL DNS auto-discovery: KMS name not available KMS machine registry override defined: kms.winitpro.ru:1688 Activation Interval: 120 minutes Renewal Interval: 10080 minutes KMS host caching: Enabled
В результатах может содержаться:
LICENSE NAME: Office 16, Office16O365ProPlusR_Grace edition LICENSE DESCRIPTION: Office 16, RETAIL (Grace) channel LICENSE STATUS: ---OOB_GRACE--- ERROR CODE: 0x4004F00C ERROR DESCRIPTION: The Software Licensing Service reported that the application is running within the valid grace period.
Это говорит, что копия Microsoft 365 (O365) на вашем компьютере активирован в ознакомительном режиме (пробная версия).
- MAK edition — используется MAK активация
- Retail edition – розничный продукт, активированный розничным ключом
- Subscription (TIMEBASED_SUB channel) – используется копия Office по подписке (ограничена по времени)
Если команда вернула,
<No installed product keys detected>
, значит лицензии Office отсутствуют.
Проверить статус активации Office с помощью PowerShell
Можно вывести список лицензий Office, установленных на компьютере с помощью PowerShell:
Get-CimInstance SoftwareLicensingProduct| where {$_.name -like "*office*"}|select name,licensestatus
В данном примере команда вернула, что на компьютере установлены две лицензии Office, одна из которых активирована (LicenseStatus=1).
Цифровой код статуса активации Office можно преобразовать в текстовое описание:
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
}
Get-CimInstance -ClassName SoftwareLicensingProduct | where {$_.name -like "*office*"}| select Name, ApplicationId, @{N=’LicenseStatus’; E={[LicenseStatus]$_.LicenseStatus}}
Можно узнать статус активации MS Office на удаленном компьютере:
Get-CimInstance -ComputerName PC33220de SoftwareLicensingProduct| where {$_.name -like "*office*"}|select name,licensestatus
В домене Active Directory можно удаленно получить статус активации со всех компьютеров в определенной OU с помощью PowerShell скрипта:
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
}
$Comps=Get-ADComputer -Filter {enabled -eq "true"} -Filter -SearchBase ‘OU=Moscow,DC=winitpro,DC=loc’
$result=@()
Foreach ($comp in $comps)
{
If ((Test-NetConnection $comp.name -WarningAction SilentlyContinue).PingSucceeded -eq $true)
{
$result+= Get-CimInstance -ClassName SoftwareLicensingProduct -ComputerName $comp.name| where {$_.name -like "*office*"}| select PSComputerName,Name, ApplicationId, @{N=’LicenseStatus’; E={[LicenseStatus]$_.LicenseStatus}}
}
}
$result|Out-GridView
- Для получения списка активных компьютеров в OU используется командлета Get-ADComputer из модуля AD_PowerShell;
- Доступность компьютеров проверяется с помощью пинга командлетом Test-NetConnection;
- Скрипт выводит результат в виде графической таблицы Out-GridView.
Для просмотра статуса активации Microsoft 365 Apps и Office 365 можно использовать новый встроенный PoweShell скрипт vnextdiag.ps1.
- Перейдите в каталог с установленным Office:
cd 'C:\Program Files\Microsoft Office\Office16'
- Разрешите запуск PowerShell скриптов в текущей сессии:
Set-ExecutionPolicy RemoteSigned -Scope Process
- Выполните команду:
.\vNextDiag.ps1 -list
Скрипт вернет тип лицензии (
User|Subscription
или
Device|Perpetual
), название установленных продуктов Office, статус лицензирования, срок действия лицензии )подписки), email адрес и ID тенанта пользователя, используется ли режим Shared Computer Licensing (например при использовании Microsoft 365 Apps на RDS):
Постоянно появляется запрос активации Office
Если на компьютере была предустановлена предбудущая предварительная версия Office (например, на OEM компьютерах), то после установки и активации вашей копии Office может периодически появляться запрос на активацию.
Чтобы избавиться от этого окна, нужно очистить в реестре ключи, связанные с предыдущей версией Office. Проще всего удалить эти разделы реестра с помощью PowerShell:
Remove-Item –Path “HKLM:\SOFTWARE\Wow6432Node\Microsoft\Office\16.0\Common\OEM” –Recurse
Remove-Item –Path “HKLM:\SOFTWARE\Microsoft\Office\16.0\Common\OEM” –Recurse