Added HWID support for Windows 10 LTSC 2019

- Now Microsoft support HWID (Digital License) for Windows 10 LTSC 2019, added key for it in the script.
- Some minor improvements.
This commit is contained in:
WindowsAddict 2020-08-14 09:29:32 +05:30 committed by GitHub
parent 118379f292
commit d4b8f942ec
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 32915 additions and 0 deletions

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,16 @@
====================================================================================================
File Details:
====================================================================================================
d30a0e4e5911d3ca705617d17225372731c770e2 *cleanosppx64.exe Virus Total = 0/66
39ed8659e7ca16aaccb86def94ce6cec4c847dd6 *cleanosppx86.exe Virus Total = 1/66
Virus Total Report Date: 12-11-2019
These files are official Microsoft files and in this script, these are used in
cleaning office license in C2R Retail office to VL conversion process.
The source of these files is the 'old' version of Microsoft Tool O15CTRRemove.diagcab
You can get the original file here https://s.put.re/WFuXpyWA.zip
====================================================================================================

View file

@ -0,0 +1,657 @@
@setlocal DisableDelayedExpansion
@echo off
:: =======================================================================================================
::
:: This script is a part of 'Microsoft Activation Scripts' project.
::
:: Homepages-
:: NsaneForums: (Login Required) https://www.nsaneforums.com/topic/316668-microsoft-activation-scripts/
:: GitHub: https://github.com/massgravel/Microsoft-Activation-Scripts
:: GitLab: https://gitlab.com/massgrave/microsoft-activation-scripts
::
:: Maintained by @WindowsAddict
::
:: =======================================================================================================
::========================================================================================================================================
cls
set Unattended=
set _args=
set _elev=
set RenTask=
set RenActTask=
set DeskMenu=
set _SkipWinAct=
set _end=
set "_arg1=%~1"
if not defined _arg1 goto :NoProgArgs
set "_args=%~1"
set "_arg2=%~2"
set "_arg3=%~3"
if defined _arg2 set "_args=%~1 %~2"
if defined _arg3 set "_args=%~1 %~2 %~3"
for %%A in (%_args%) do (
if /i "%%A"=="-el" set _elev=1
if /i "%%A"=="/swa" set _SkipWinAct=1
if /i "%%A"=="/rt" set RenTask=1&set Unattended=1
if /i "%%A"=="/rat" set RenActTask=1&set Unattended=1
if /i "%%A"=="/dcm" set DeskMenu=1&set Unattended=1)
:NoProgArgs
for /f "tokens=6 delims=[]. " %%G in ('ver') do set winbuild=%%G
set "_psc=powershell"
set "nul=1>nul 2>nul"
set "EchoRed=%_psc% write-host -back Black -fore Red"
set "EchoGreen=%_psc% write-host -back Black -fore Green"
set "EchoYellow=%_psc% write-host -back Black -fore DarkYellow"
set "ELine=echo: & %EchoRed% ==== ERROR ==== &echo:"
::========================================================================================================================================
for %%i in (powershell.exe) do if "%%~$path:i"=="" (
echo: &echo ==== ERROR ==== &echo:
echo Powershell is not installed in the system.
echo Aborting...
set _end=1
goto Done
)
::========================================================================================================================================
if %winbuild% LSS 7600 (
%ELine%
echo Unsupported OS version Detected.
echo Project is supported only for Windows 7/8/8.1/10 and their Server equivalent.
set _end=1
goto Done
)
::========================================================================================================================================
:: Elevate script as admin and pass arguments and preventing loop
:: Thanks to @hearywarlot [ https://forums.mydigitallife.net/threads/.74332/ ] for the VBS method.
:: Thanks to @abbodi1406 for the powershell method and solving special characters issue in file path name.
%nul% reg query HKU\S-1-5-19 && (
goto :Passed
) || (
if defined _elev goto :E_Admin
)
set "_batf=%~f0"
set "_vbsf=%temp%\admin.vbs"
set _PSarg="""%~f0""" -el
if defined _args set _PSarg="""%~f0""" -el """%_args%"""
setlocal EnableDelayedExpansion
(
echo Set strArg=WScript.Arguments.Named
echo Set strRdlproc = CreateObject^("WScript.Shell"^).Exec^("rundll32 kernel32,Sleep"^)
echo With GetObject^("winmgmts:\\.\root\CIMV2:Win32_Process.Handle='" ^& strRdlproc.ProcessId ^& "'"^)
echo With GetObject^("winmgmts:\\.\root\CIMV2:Win32_Process.Handle='" ^& .ParentProcessId ^& "'"^)
echo If InStr ^(.CommandLine, WScript.ScriptName^) ^<^> 0 Then
echo strLine = Mid^(.CommandLine, InStr^(.CommandLine , "/File:"^) + Len^(strArg^("File"^)^) + 8^)
echo End If
echo End With
echo .Terminate
echo End With
echo CreateObject^("Shell.Application"^).ShellExecute "cmd.exe", "/c " ^& chr^(34^) ^& chr^(34^) ^& strArg^("File"^) ^& chr^(34^) ^& strLine ^& chr^(34^), "", "runas", 1
)>"!_vbsf!"
(%nul% cscript //NoLogo "!_vbsf!" /File:"!_batf!" -el "!_args!") && (
del /f /q "!_vbsf!"
exit /b
) || (
del /f /q "!_vbsf!"
%nul% %_psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && (
exit /b
) || (
goto :E_Admin
)
)
exit /b
:E_Admin
%ELine%
echo This script require administrator privileges.
echo To do so, right click on this script and select 'Run as administrator'.
set _end=1
goto Done
:Passed
::========================================================================================================================================
:: Fix for the special characters limitation in path name
:: Written by @abbodi1406
set "_work=%~dp0"
if "%_work:~-1%"=="\" set "_work=%_work:~0,-1%"
set "_batf=%~f0"
set "_batp=%_batf:'=''%"
setlocal EnableDelayedExpansion
::========================================================================================================================================
if not exist "!_work!\Activate.cmd" (
%ELine%
echo File [Activate.cmd] does not exist in current folder..
echo It's required for the Task Creation.
set _end=1
goto Done
)
call :check cleanosppx64.exe cleanosppx86.exe
if defined _miss set _end=1&goto Done
::========================================================================================================================================
set "_dest=%ProgramData%\Online_KMS_Activation"
set "key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\taskcache\tasks"
:ActivationRenewal
cls
title Online KMS Activation Renewal
mode con cols=98 lines=30
set ActTask=
set error_=
set DelDeskCont=
set error_1=
if defined RenTask goto:Task
if defined RenActTask set ActTask=1&goto:Task
if defined DeskMenu goto:ContextMenu
echo:
echo:
echo:
echo You can apply the option [either 1 or 2] and [3].
echo ______________________________________________________
echo ^| ^|
echo ^| Auto Renewal via Task Scheduler ^|
echo ^| ^|
echo ^| [1] Create Renewal Task ^|
echo ^| ^|
echo ^| [2] Create Renewal and Activation Task ^|
echo ^|______________________________________________________^|
echo ^| ^|
echo ^| Manual Renewal via Desktop Context Menu ^|
echo ^| ^|
echo ^| [3] Add Desktop Context Menu ^|
echo ^|______________________________________________________^|
echo ^| ^|
echo ^| [4] Exit ^|
echo ^| ^|
echo ^|______________________________________________________^|
echo:
choice /C:1234 /N /M ". Enter Your Choice [1,2,3,4] : "
if errorlevel 4 exit /b
if errorlevel 3 goto:ContextMenu
if errorlevel 2 set ActTask=1&goto:Task
if errorlevel 1 goto:Task
:======================================================================================================================================================
:Task
cls
if defined ActTask (
title Create Renewal And Activation Tasks
) else (
title Create Renewal Task
)
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Renewal" >nul && (
schtasks /delete /tn Online_KMS_Activation_Script-Renewal /f %nul%
)
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Run_Once" >nul && (
schtasks /delete /tn Online_KMS_Activation_Script-Run_Once /f %nul%
)
If exist "%_dest%\" (
@RD /s /q "%_dest%\" %nul%
)
If exist "%windir%\Online_KMS_Activation_Script\" (
@RD /s /q "%windir%\Online_KMS_Activation_Script\" %nul%
)
If exist "%ProgramData%\Online_KMS_Activation.cmd" (
Reg delete "HKCR\DesktopBackground\shell\Activate Windows - Office" /f %nul%
del /f /q "%ProgramData%\Online_KMS_Activation.cmd" %nul%
set DelDeskCont=1
)
md "%_dest%\BIN\" %nul%
set "_temp=%SystemRoot%\Temp\_KMS_Task_Work"
if exist "%_temp%\" @RD /S /Q "%_temp%\" %nul%
md "%_temp%\" %nul%
call :Export renewal "%_temp%\Renewal.xml" Unicode
if defined ActTask (call :Export run_once "%_temp%\Run_Once.xml" Unicode)
call :Export info "%_dest%\Info.txt" ASCII
copy /y /b "!_work!\BIN\cleanosppx64.exe" "%_dest%\BIN\cleanosppx64.exe" %nul%
copy /y /b "!_work!\BIN\cleanosppx86.exe" "%_dest%\BIN\cleanosppx86.exe" %nul%
cd /d "!_work!"
if defined _SkipWinAct (
%nul% %_psc% "(gc Activate.cmd) -replace 'set ActWindows=1', 'set ActWindows=0' | Out-File -encoding ASCII "%_dest%\Activate.cmd"" || (set error_=1)
) else (
copy /y /b "!_work!\Activate.cmd" "%_dest%\Activate.cmd" %nul%
)
schtasks /create /tn "Online_KMS_Activation_Script-Renewal" /ru "SYSTEM" /xml "%_temp%\Renewal.xml" %nul%
if defined ActTask (schtasks /create /tn "Online_KMS_Activation_Script-Run_Once" /ru "SYSTEM" /xml "%_temp%\Run_Once.xml" %nul%)
if exist "%_temp%\" @RD /S /Q "%_temp%\" %nul%
::========================================================================================================================================
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Renewal" >nul || (set error_=1)
if defined ActTask reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Run_Once" >nul || (set error_=1)
If not exist "%_dest%\Activate.cmd" (set error_=1)
If not exist "%_dest%\Info.txt" (set error_=1)
If not exist "%_dest%\BIN\cleanosppx64.exe" (set error_=1)
If not exist "%_dest%\BIN\cleanosppx86.exe" (set error_=1)
if defined error_ (
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Renewal" >nul && (
schtasks /delete /tn Online_KMS_Activation_Script-Renewal /f %nul%
)
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Run_Once" >nul && (
schtasks /delete /tn Online_KMS_Activation_Script-Run_Once /f %nul%
)
reg delete "HKCR\DesktopBackground\shell\Activate Windows - Office" /f %nul%
If exist "%_dest%\" (
@RD /s /q "%_dest%\" %nul%
)
echo _________________________________________________________________
echo:
%ELine%
echo Run the Online KMS Complete Uninstall script and then try again.
echo _________________________________________________________________
) else (
echo:
echo __________________________________________________________________________________________
echo:
if defined DelDeskCont (
%EchoYellow% Previous desktop context menu entry for Online KMS Activation is deleted.
echo:
)
if defined _SkipWinAct (
%EchoYellow% %_dest%\Activate.cmd is set to skip Windows Activation.
echo:
)
echo Files created:
echo %_dest%\BIN\cleanosppx64.exe
echo %_dest%\BIN\cleanosppx86.exe
echo %_dest%\Activate.cmd
echo %_dest%\Info.txt
echo:
echo Scheduled Tasks created:
echo \Online_KMS_Activation_Script-Renewal
if defined ActTask (echo \Online_KMS_Activation_Script-Run_Once)
echo:
echo It's recommended to set exclusion for the following file in your Antivirus Program.
echo:
echo %_dest%\Activate.cmd
echo __________________________________________________________________________________________
echo:
if defined ActTask (
%EchoGreen% Online KMS Activation - Renewal and Activation Tasks are successfully created.
) else (
%EchoGreen% Online KMS Activation - Renewal Task is successfully created.
)
echo __________________________________________________________________________________________
echo:
)
goto Done
::========================================================================================================================================
:ContextMenu
cls
title Add Desktop Context Menu
If exist "%ProgramData%\Online_KMS_Activation.cmd" (
del /f /q "%ProgramData%\Online_KMS_Activation.cmd" %nul%
set DelDeskCont=1
)
reg delete "HKCR\DesktopBackground\shell\Activate Windows - Office" /f %nul%
if exist "%_dest%\BIN\" (
@RD /s /q "%_dest%\BIN\" %nul%
)
md "%_dest%\BIN\" %nul%
copy /y /b "!_work!\BIN\cleanosppx64.exe" "%_dest%\BIN\cleanosppx64.exe" %nul%
copy /y /b "!_work!\BIN\cleanosppx86.exe" "%_dest%\BIN\cleanosppx86.exe" %nul%
if exist "%_dest%\Activate.cmd" (
del /f /q "%_dest%\Activate.cmd" %nul%
)
cd /d "!_work!"
if defined _SkipWinAct (
%nul% %_psc% "(gc Activate.cmd) -replace 'set ActWindows=1', 'set ActWindows=0' | Out-File -encoding ASCII "%_dest%\Activate.cmd"" || (set error_=1)
) else (
copy /y /b "!_work!\Activate.cmd" "%_dest%\Activate.cmd" %nul%
)
if exist "%_dest%\Info.txt" (
del /f /q "%_dest%\Info.txt" %nul%
)
call :Export info "%_dest%\Info.txt" ASCII
reg add "HKCR\DesktopBackground\shell\Activate Windows - Office" /v "Icon" /t REG_SZ /d "%SystemRoot%%\System32\shell32.dll,71" /f >nul 2>&1 || (set error_1=1)
reg add "HKCR\DesktopBackground\shell\Activate Windows - Office\command" /ve /d "%_dest%\Activate.cmd" /f %nul% || (set error_1=1)
If not exist "%_dest%\Activate.cmd" (set error_=1)
If not exist "%_dest%\Info.txt" (set error_=1)
If not exist "%_dest%\BIN\cleanosppx64.exe" (set error_=1)
If not exist "%_dest%\BIN\cleanosppx86.exe" (set error_=1)
reg query "HKCR\DesktopBackground\shell\Activate Windows - Office" %nul% || (set error_1=1)
if defined error_1 (
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Renewal" >nul && (
schtasks /delete /tn Online_KMS_Activation_Script-Renewal /f %nul%
)
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Run_Once" >nul && (
schtasks /delete /tn Online_KMS_Activation_Script-Run_Once /f %nul%
)
reg delete "HKCR\DesktopBackground\shell\Activate Windows - Office" /f %nul%
If exist "%_dest%\" (
@RD /s /q "%_dest%\" %nul%
)
echo _________________________________________________________________
echo:
%ELine%
echo Run the Online KMS Complete Uninstall script and then try again.
echo _________________________________________________________________
) else (
echo:
echo __________________________________________________________________________________________
echo:
if defined DelDeskCont (
%EchoYellow% Previous desktop context menu entry for Online KMS Activation is deleted.
echo:
)
if defined _SkipWinAct (
%EchoYellow% %_dest%\Activate.cmd is set to skip Windows Activation.
echo:
)
echo Files created:
echo %_dest%\BIN\cleanosppx64.exe
echo %_dest%\BIN\cleanosppx86.exe
echo %_dest%\Activate.cmd
echo %_dest%\Info.txt
echo:
echo Registry entry added:
echo HKCR\DesktopBackground\shell\Activate Windows - Office
echo HKCR\DesktopBackground\shell\Activate Windows - Office\command
echo __________________________________________________________________________________________
echo:
%EchoGreen% Desktop context menu entry for Online KMS Activation is successfully created.
echo __________________________________________________________________________________________
echo:
)
::========================================================================================================================================
:Done
echo:
if defined Unattended (
echo Exiting in 3 seconds...
if %winbuild% LSS 7600 (ping -n 3 127.0.0.1 > nul) else (timeout /t 3)
exit /b
)
if defined _end (
echo Press any key to exit...
pause >nul
exit /b
) else (
echo Press any key to go back...
pause >nul
goto ActivationRenewal
)
::========================================================================================================================================
:info:
====================================================================================================
Online KMS Activation:
====================================================================================================
The use of this script is to activate / renew your Windows /Server /Office license
using online KMS.
- Scheduled task name (If Renewal Task is created) (Weekly).
\Online_KMS_Activation_Script-Renewal
- Scheduled task name (If Activation Task is created).
\Online_KMS_Activation_Script-Run_Once
The scheduled task runs only if the system is connected to the Internet.
Activation Task will run on the system login and after successful activation, this task will
delete itself.
- If system preactivation is done via HWID + Online KMS, and HWID was applied but was not
successful due to lack of internet at the time of installation of Windows, in that case,
Online KMS script will be set to skip Windows activation.
- Registry entry name and location (If desktop context menu is created).
HKCR\DesktopBackground\shell\Activate Windows - Office
For complete script and more info, browse the script homepage.
====================================================================================================
File Details:
====================================================================================================
d30a0e4e5911d3ca705617d17225372731c770e2 *cleanosppx64.exe Virus Total = 0/66
39ed8659e7ca16aaccb86def94ce6cec4c847dd6 *cleanosppx86.exe Virus Total = 1/66
Virus Total Report Date: 12-11-2019
These files are official Microsoft files and in this script, these are used in
cleaning office license in C2R Retail office to VL conversion process.
The source of these files is the 'old' version of Microsoft Tool O15CTRRemove.diagcab
You can get the original file here https://s.put.re/WFuXpyWA.zip
====================================================================================================
Online KMS Activation script is just a fork of @abbodi1406's KMS_VL_ALL Project.
KMS_VL_ALL homepage: https://forums.mydigitallife.net/posts/838808
This fork was made to avoid having any KMS binary files and system can be activated using
some manual commands or transparent batch script files.
Online KMS Activation script is a part of 'Microsoft Activation Scripts'
Maintained by @WindowsAddict
Homepages-
NsaneForums: (Login Required) https://www.nsaneforums.com/topic/316668-microsoft-activation-scripts/
GitHub: https://github.com/massgravel/Microsoft-Activation-Scripts
GitLab: https://gitlab.com/massgrave/microsoft-activation-scripts
====================================================================================================
:info:
:renewal:
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Source>Microsoft Corporation</Source>
<Date>1999-01-01T12:00:00.34375</Date>
<Author>RPO/WindowsAddict</Author>
<Version>1.0</Version>
<Description>Online_KMS_Activation_Script-Renewal - Weekly Activation Renewal Task</Description>
<URI>\Online_KMS_Activation_Script-Renewal</URI>
<SecurityDescriptor>D:P(A;;FA;;;SY)(A;;FA;;;BA)(A;;FRFX;;;LS)(A;;FRFW;;;S-1-5-80-123231216-2592883651-3715271367-3753151631-4175906628)(A;;FR;;;S-1-5-4)</SecurityDescriptor>
</RegistrationInfo>
<Triggers>
<CalendarTrigger>
<StartBoundary>1999-01-01T12:00:00</StartBoundary>
<Enabled>true</Enabled>
<ScheduleByWeek>
<DaysOfWeek>
<Sunday />
</DaysOfWeek>
<WeeksInterval>1</WeeksInterval>
</ScheduleByWeek>
</CalendarTrigger>
</Triggers>
<Principals>
<Principal id="LocalSystem">
<UserId>S-1-5-18</UserId>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>true</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>true</RunOnlyIfNetworkAvailable>
<IdleSettings>
<StopOnIdleEnd>false</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>true</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
<UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT10M</ExecutionTimeLimit>
<Priority>7</Priority>
<RestartOnFailure>
<Interval>PT2M</Interval>
<Count>3</Count>
</RestartOnFailure>
</Settings>
<Actions Context="LocalSystem">
<Exec>
<Command>%ProgramData%\Online_KMS_Activation\Activate.cmd</Command>
<Arguments>Task</Arguments>
</Exec>
</Actions>
</Task>
:renewal:
:run_once:
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Source>Microsoft Corporation</Source>
<Date>1999-01-01T12:00:00.34375</Date>
<Author>RPO/WindowsAddict</Author>
<Version>1.0</Version>
<Description>Online_KMS_Activation_Script-Run_Once - Run and Delete itself on first Internet Contact</Description>
<URI>\Online_KMS_Activation_Script-Run_Once</URI>
<SecurityDescriptor>D:P(A;;FA;;;SY)(A;;FA;;;BA)(A;;FRFX;;;LS)(A;;FRFW;;;S-1-5-80-123231216-2592883651-3715271367-3753151631-4175906628)(A;;FR;;;S-1-5-4)</SecurityDescriptor>
</RegistrationInfo>
<Triggers>
<LogonTrigger>
<Enabled>true</Enabled>
</LogonTrigger>
</Triggers>
<Principals>
<Principal id="LocalSystem">
<UserId>S-1-5-18</UserId>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>true</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>true</RunOnlyIfNetworkAvailable>
<IdleSettings>
<StopOnIdleEnd>false</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>true</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
<UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT10M</ExecutionTimeLimit>
<Priority>7</Priority>
<RestartOnFailure>
<Interval>PT2M</Interval>
<Count>3</Count>
</RestartOnFailure>
</Settings>
<Actions Context="LocalSystem">
<Exec>
<Command>%ProgramData%\Online_KMS_Activation\Activate.cmd</Command>
<Arguments>Task</Arguments>
</Exec>
</Actions>
</Task>
:run_once:
::========================================================================================================================================
:: Echo all the missing files.
:: Written by @abbodi1406 (MDL)
:check
for %%# in (%1 %2) do (if not exist "!_work!\BIN\%%#" (if defined _miss (set "_miss=!_miss! %%#") else (set "_miss=%%#")))
if defined _miss (
%ELine%
echo Following required file^(s^) is missing in 'BIN' folder. Aborting...
echo:
echo !_miss!
)
exit /b
::========================================================================================================================================
:: Extract the text from batch script without character and file encoding issue
:: Thanks to @abbodi1406
:Export
%nul% %_psc% "$f=[io.file]::ReadAllText('!_batp!') -split \":%~1\:.*`r`n\"; [io.file]::WriteAllText('%~2',$f[1].Trim(),[System.Text.Encoding]::%~3);" &exit/b
exit /b
::========================================================================================================================================

View file

@ -0,0 +1,264 @@
@setlocal DisableDelayedExpansion
@echo off
:: For unattended mode, run the script with /u parameter.
:: =======================================================================================================
::
:: This script is a part of 'Microsoft Activation Scripts' project.
::
:: Homepages-
:: NsaneForums: (Login Required) https://www.nsaneforums.com/topic/316668-microsoft-activation-scripts/
:: GitHub: https://github.com/massgravel/Microsoft-Activation-Scripts
:: GitLab: https://gitlab.com/massgrave/microsoft-activation-scripts
::
:: Maintained by @WindowsAddict
::
:: =======================================================================================================
::========================================================================================================================================
cls
title Online KMS Complete Uninstall
set Unattended=
set _args=
set _elev=
set "_arg1=%~1"
if not defined _arg1 goto :NoProgArgs
set "_args=%~1"
set "_arg2=%~2"
if defined _arg2 set "_args=%~1 %~2"
for %%A in (%_args%) do (
if /i "%%A"=="-el" set _elev=1
if /i "%%A"=="/u" set Unattended=1)
:NoProgArgs
for /f "tokens=6 delims=[]. " %%G in ('ver') do set winbuild=%%G
set "_psc=powershell"
set "nul=1>nul 2>nul"
set "EchoRed=%_psc% write-host -back Black -fore Red"
set "EchoGreen=%_psc% write-host -back Black -fore Green"
set "ELine=echo: & %EchoRed% ==== ERROR ==== &echo:"
::========================================================================================================================================
for %%i in (powershell.exe) do if "%%~$path:i"=="" (
echo: &echo ==== ERROR ==== &echo:
echo Powershell is not installed in the system.
echo Aborting...
goto UN_Done
)
::========================================================================================================================================
if %winbuild% LSS 7600 (
%ELine%
echo Unsupported OS version Detected.
echo Project is supported only for Windows 7/8/8.1/10 and their Server equivalent.
goto UN_Done
)
::========================================================================================================================================
:: Elevate script as admin and pass arguments and preventing loop
:: Thanks to @hearywarlot [ https://forums.mydigitallife.net/threads/.74332/ ] for the VBS method.
:: Thanks to @abbodi1406 for the powershell method and solving special characters issue in file path name.
%nul% reg query HKU\S-1-5-19 && (
goto :Passed
) || (
if defined _elev goto :E_Admin
)
set "_batf=%~f0"
set "_vbsf=%temp%\admin.vbs"
set _PSarg="""%~f0""" -el
if defined _args set _PSarg="""%~f0""" -el """%_args%"""
setlocal EnableDelayedExpansion
(
echo Set strArg=WScript.Arguments.Named
echo Set strRdlproc = CreateObject^("WScript.Shell"^).Exec^("rundll32 kernel32,Sleep"^)
echo With GetObject^("winmgmts:\\.\root\CIMV2:Win32_Process.Handle='" ^& strRdlproc.ProcessId ^& "'"^)
echo With GetObject^("winmgmts:\\.\root\CIMV2:Win32_Process.Handle='" ^& .ParentProcessId ^& "'"^)
echo If InStr ^(.CommandLine, WScript.ScriptName^) ^<^> 0 Then
echo strLine = Mid^(.CommandLine, InStr^(.CommandLine , "/File:"^) + Len^(strArg^("File"^)^) + 8^)
echo End If
echo End With
echo .Terminate
echo End With
echo CreateObject^("Shell.Application"^).ShellExecute "cmd.exe", "/c " ^& chr^(34^) ^& chr^(34^) ^& strArg^("File"^) ^& chr^(34^) ^& strLine ^& chr^(34^), "", "runas", 1
)>"!_vbsf!"
(%nul% cscript //NoLogo "!_vbsf!" /File:"!_batf!" -el "!_args!") && (
del /f /q "!_vbsf!"
exit /b
) || (
del /f /q "!_vbsf!"
%nul% %_psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && (
exit /b
) || (
goto :E_Admin
)
)
exit /b
:E_Admin
%ELine%
echo This script require administrator privileges.
echo To do so, right click on this script and select 'Run as administrator'.
goto UN_Done
:Passed
::========================================================================================================================================
mode con: cols=98 lines=30
setlocal EnableDelayedExpansion
set "key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\taskcache\tasks"
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Renewal" >nul && (
echo Deleting [Task] Online_KMS_Activation_Script-Renewal
schtasks /delete /tn Online_KMS_Activation_Script-Renewal /f %nul%
)
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Run_Once" >nul && (
echo Deleting [Task] Online_KMS_Activation_Script-Run_Once
schtasks /delete /tn Online_KMS_Activation_Script-Run_Once /f %nul%
)
If exist "%windir%\Online_KMS_Activation_Script\" (
echo Deleting [Folder] %windir%\Online_KMS_Activation_Script\
@RD /s /q "%windir%\Online_KMS_Activation_Script\" %nul%
)
If exist "%ProgramData%\Online_KMS_Activation\" (
echo Deleting [Folder] %ProgramData%\Online_KMS_Activation\
@RD /s /q "%ProgramData%\Online_KMS_Activation\" %nul%
)
if exist "%ProgramData%\Online_KMS_Activation.cmd" (
echo Deleting [File] %ProgramData%\Online_KMS_Activation.cmd
del /f /q "%ProgramData%\Online_KMS_Activation.cmd" %nul%
)
reg query "HKCR\DesktopBackground\shell\Activate Windows - Office" %nul% && (
echo Deleting [Context Menu Registry] HKCR\DesktopBackground\shell\Activate Windows - Office
Reg delete "HKCR\DesktopBackground\shell\Activate Windows - Office" /f %nul%
)
echo:
::========================================================================================================================================
:: Clear-KMS-Cache.cmd
:: https://forums.mydigitallife.net/posts/1511883
:: Written by @abbodi1406 (MDL)
set "SysPath=%Windir%\System32"
if exist "%Windir%\Sysnative\reg.exe" (set "SysPath=%Windir%\Sysnative")
set "Path=%SysPath%;%Windir%;%SysPath%\Wbem;%SysPath%\WindowsPowerShell\v1.0\"
set "OSPP=SOFTWARE\Microsoft\OfficeSoftwareProtectionPlatform"
set "SPPk=SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform"
wmic path SoftwareLicensingProduct where (Description like '%%KMSCLIENT%%') get Name 2>nul | findstr /i Windows 1>nul && (set SppHook=1) || (set SppHook=0)
wmic path SoftwareLicensingProduct where (Description like '%%KMSCLIENT%%') get Name 2>nul | findstr /i Office 1>nul && (set SppHook=1)
wmic path OfficeSoftwareProtectionService get Version >nul 2>&1 && (set OsppHook=1) || (set OsppHook=0)
if %SppHook% NEQ 0 call :UN_cKMS SoftwareLicensingProduct SoftwareLicensingService SPP
if %OsppHook% NEQ 0 call :UN_cKMS OfficeSoftwareProtectionProduct OfficeSoftwareProtectionService OSPP
call :UN_cREG >nul 2>&1
echo:
goto UN_Verify
:UN_cKMS
echo Clearing %3 KMS Cache...
set spp=%1
set sps=%2
for /f "tokens=2 delims==" %%G in ('"wmic path %spp% where (Description like '%%KMSCLIENT%%') get ID /VALUE" 2^>nul') do (set app=%%G&call :UN_cAPP)
for /f "tokens=2 delims==" %%A in ('"wmic path %sps% get Version /VALUE"') do set ver=%%A
wmic path %sps% where version='%ver%' call ClearKeyManagementServiceMachine >nul 2>&1
wmic path %sps% where version='%ver%' call ClearKeyManagementServicePort >nul 2>&1
wmic path %sps% where version='%ver%' call DisableKeyManagementServiceDnsPublishing 1 >nul 2>&1
wmic path %sps% where version='%ver%' call DisableKeyManagementServiceHostCaching 1 >nul 2>&1
goto :eof
:UN_cAPP
wmic path %spp% where ID='%app%' call ClearKeyManagementServiceMachine >nul 2>&1
wmic path %spp% where ID='%app%' call ClearKeyManagementServicePort >nul 2>&1
goto :eof
:UN_cREG
reg delete "HKLM\%SPPk%\55c92734-d682-4d71-983e-d6ec3f16059f" /f
reg delete "HKLM\%SPPk%\0ff1ce15-a989-479d-af46-f275c6370663" /f
reg delete "HKLM\%SPPk%" /f /v KeyManagementServiceName
reg delete "HKLM\%SPPk%" /f /v KeyManagementServicePort
reg delete "HKU\S-1-5-20\%SPPk%\55c92734-d682-4d71-983e-d6ec3f16059f" /f
reg delete "HKU\S-1-5-20\%SPPk%\0ff1ce15-a989-479d-af46-f275c6370663" /f
reg delete "HKLM\%OSPP%\59a52881-a989-479d-af46-f275c6370663" /f
reg delete "HKLM\%OSPP%\0ff1ce15-a989-479d-af46-f275c6370663" /f
reg delete "HKLM\%OSPP%" /f /v KeyManagementServiceName
reg delete "HKLM\%OSPP%" /f /v KeyManagementServicePort
if %OsppHook% NEQ 1 (
reg delete "HKLM\%OSPP%" /f
reg delete "HKU\S-1-5-20\%OSPP%" /f
)
goto :eof
::========================================================================================================================================
:UN_Verify
set error_=
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Renewal" >nul && (set error_=1)
reg query "%key%" /f Path /s | find /i "\Online_KMS_Activation_Script-Run_Once" >nul && (set error_=1)
If exist "%windir%\Online_KMS_Activation_Script\" (set error_=1)
if exist "%ProgramData%\Online_KMS_Activation\" (set error_=1)
reg query "HKCR\DesktopBackground\shell\Activate Windows - Office" >nul 2>&1 && (set error_=1)
if exist "%ProgramData%\Online_KMS_Activation.cmd" (set error_=1)
if defined error_ (
echo ______________________________________
%ELine%
echo Try Again.
echo ______________________________________
) else (
echo _________________________________________________________________
echo:
%EchoGreen% Online KMS Complete Uninstall is done successfully.
echo _________________________________________________________________
)
::========================================================================================================================================
:UN_Done
echo:
if defined Unattended (
echo Exiting in 3 seconds...
if %winbuild% LSS 7600 (ping -n 3 127.0.0.1 > nul) else (timeout /t 3)
exit /b
)
echo Press any key to exit...
pause >nul
exit /b
::========================================================================================================================================

View file

@ -0,0 +1,657 @@
====================================================================================================
Online KMS Activation script is just a fork of @abbodi1406's KMS_VL_ALL Project.
KMS_VL_ALL homepage: https://forums.mydigitallife.net/posts/838808
This fork was made to avoid having any KMS binary files and system can be activated using
some manual commands or transparent batch script files.
This script is a part of 'Microsoft Activation Scripts' project.
Homepages-
NsaneForums: (Login Required) https://www.nsaneforums.com/topic/316668-microsoft-activation-scripts/
GitHub: https://github.com/massgravel/Microsoft-Activation-Scripts
GitLab: https://gitlab.com/massgrave/microsoft-activation-scripts
Maintained by @WindowsAddict
====================================================================================================
Online KMS Activation:
====================================================================================================
- This KMS script skips the activation of any permanently / KMS38-activated product.
- This KMS script can activate both Retail and VL Windows / Server installation.
- This KMS script can activate C2R Retail and VL Office, but not 2010/2013 MSI Retail Office.
----------------------
- Activation Renewal
----------------------
- KMS activates Windows / Server / Office for 180 Days. (For Core/ProWMC edition it is 30/45 Days)
- By design, using the KMS activation method, the system contacts the registered server every 7
days, and if contacted successfully it will automatically renew and reset the activation for the
the full period of 180 days again, starting from the day of successful contact.
If the system cannot contact the server, it will be deactivated after 180 days and it will
remain deactivated until contact can be restored.
- The KMS servers I've added have been working steadily for two to three years, but there can be
no guarantee that they will remain online indefinitely. If a registered server goes
down, you will need to create a renewal task, or do a manual renewal, for the lifetime of the
activation.
There are 3 ways you can renew the KMS server and as a result, renew the activation.
1- Activate.cmd
Run this file whenever the system needs activation. Depending upon the particular (never fully-knowable)
circumstances, a successful activation may last for a period of a MINIMUM of 180 days,
or a maximum of the full life of the machine it's running on, and you may never need to run it again.
2- Manual Renewal via Desktop Context Menu
This method is exactly same as above but here we put the following files in,
C:\ProgramData\Online_KMS_Activation\BIN\cleanosppx64.exe
C:\ProgramData\Online_KMS_Activation\BIN\cleanosppx86.exe
C:\ProgramData\Online_KMS_Activation\Activate.cmd
C:\ProgramData\Online_KMS_Activation\Info.txt
and create registry entries in,
HKCR\DesktopBackground\shell\Activate Windows - Office
HKCR\DesktopBackground\shell\Activate Windows - Office\command
It creates an easy to reach Desktop context menu for the manual activation renewal.
3- Automatic Renewal via Task Scheduler
This method put the following files in,
C:\ProgramData\Online_KMS_Activation\BIN\cleanosppx64.exe
C:\ProgramData\Online_KMS_Activation\BIN\cleanosppx86.exe
C:\ProgramData\Online_KMS_Activation\Activate.cmd
C:\ProgramData\Online_KMS_Activation\Info.txt
And creates a scheduled task to run the script every 7 days.
The scheduled task runs only if the system is connected to the Internet.
With this method, the Activation task can also be created which will run on the system login
and after successful activation, this task will delete itself.
IMPORTANT NOTE - Some sensitive AV's may flag the Automatic Renewal via the Task, and not
because of KMS, because for them it's suspicious to run long scripts in the background as Tasks.
It's recommended to set exclusions in Antivirus for
C:\ProgramData\Online_KMS_Activation\Activate.cmd
or
use the 1st or 2nd option for activation renewal.
----------------------------------------------------------------------------------------------------
----------------------
- Remarks
----------------------
- This Online KMS Activation provides immediate global activation for Windows 8.1 and Windows 10, which
means that in the following three scenarios, the system will self-activate when connected to the
internet, and also means that users will not need to manually run the activation script again.
Scenario 1: Subsequent installation or alteration of any 2013, 2016, or 2019 Volume License
(VL) Office product.
Scenario 2: Windows edition change (with GVLK).
Scenario 3: Date change, system hardware change, etc.
- What is left in the system in the activation process?
- Activate.cmd
After activation, it leaves only the KMS Server name in the registry, which helps you to get the
above-mentioned global activation feature whereby the system auto-renews the activations,
so it's a good thing if you leave the server name in the registry.
However, you can clear this registered KMS Server name upon activation, and do that, open
the script with notepad and set Clear-KMS-Cache to 1 from 0.
What is left in the system when Renewal methods are installed, has been mentioned.
- This script includes the most-stable KMS servers (6+) list. The server selection process is
fully automatic. You don't need to worry about the server's availability.
- If your system date is incorrect (beyond 180 days) and you are offline, the system will be
deactivated, but will automatically reactivate when you correct the system date.
- Why should you choose the Online KMS activation method over offline KMS?
The main benefit of Online KMS activation is that it doesn't need any KMS binary file and system
can be activated using some manual commands or transparent batch script files.
So this is for those who don't like/have difficulties/trust issue in offline KMS because of its
binary files and antivirus detections.
If you prefer offline KMS then checkout an open-source activator,
@abbodi1406's KMS_VL_ALL https://forums.mydigitallife.net/posts/838808
----------------------------------------------------------------------------------------------------
--------------------------------------
- Office C2R Retail to VL conversion
--------------------------------------
This activation script will convert Office C2R Retail to Volume without needing separate tools.
- Supports: Office 365, Office 2019, Office 2016, Office 2013
- Activated Retail products will be skipped from conversion
this includes valid Office 365 subscriptions, or perpetual Office (MAK, OEM, MSDN, Retail..)
- Current Office licenses will be cleaned up (unless retail-activated Office detected)
then, proper Volume licenses will be installed based on the detected Product IDs
- Office Mondo suite cover all products, if detected, only its licenses will be installed
- Office 365 products will be converted with Mondo licenses by default
also, corresponding Office 365 Retail Grace Key will be installed
- Office 2016 products will be converted with corresponding Office 2019 licenses
- Office Professional suite will be converted with Office 2019 ProPlus licenses
- Office HomeBusiness/HomeStudent suites will be converted with Office 2019 Standard licenses
- If Office 2019 RTM licenses are not detected, Office 2016 licenses will be used instead
- Office 2013 products follow the same logic but handled separately
- If main products SKUs are detected, single apps licenses will not be installed to avoid duplication
- SKUs:
O365ProPlus, O365Business, O365SmallBusPrem, O365HomePrem, O365EduCloud
ProPlus, Professional, Standard, HomeBusiness, HomeStudent, Visio, Project
* Apps:
Access, Excel, InfoPath, Onenote, Outlook, PowerPoint, Publisher, SkypeForBusiness, Word,
Groove (OneDrive for Business)
- O365ProPlus, O365Business, O365SmallBusPrem, ProPlus cover all apps
Professional cover all apps except SkypeForBusiness
Standard cover all apps except Access, SkypeForBusiness
## Notice
- On Windows 7, Office 2016/2019 licensing service require Universal C Runtime to work correctly
- UCRT is available in the latest Monthly Rollup, or the separate update KB3118401
- Additionally, Office programs themselves require recent Windows 7 updates to start properly
====================================================================================================
File Details:
====================================================================================================
d30a0e4e5911d3ca705617d17225372731c770e2 *cleanosppx64.exe Virus Total = 0/66
39ed8659e7ca16aaccb86def94ce6cec4c847dd6 *cleanosppx86.exe Virus Total = 1/66
Virus Total Report Date: 12-11-2019
These files are official Microsoft files and in this script, these are used in
cleaning office license in C2R Retail office to VL conversion process.
The source of these files is the 'old' version of Microsoft Tool O15CTRRemove.diagcab
You can get the original file here https://s.put.re/WFuXpyWA.zip
====================================================================================================
How does it work?
Is it safe?
https://pastebin.com/raw/7Xyaf15Z
Mirror:
https://textuploader.com/1dg8d/raw
====================================================================================================
Products Compatibility:
====================================================================================================
Supported Products: [Only Volume-capable]
Windows 8 / 8.1 / 10 (all official editions, except Windows 10 S)
Windows 7 (Enterprise /N/E, Professional /N/E, Embedded Standard/POSReady/ThinPC)
Windows Server 2008 R2 / 2012 / 2012 R2 / 2016 / 2019
Office Volume 2010 / 2013 / 2016 / 2019
[Activation script will convert Office C2R Retail O365/2013/2016/2019 to Volume]
----------------------------------------------------------------------------------------------------
Unsupported Products:
Office Retail [Office MSI Retail 2010/2013]
Windows Editions which do not support KMS activation by design:
Windows Evaluation Editions
Windows 7 (Starter, HomeBasic, HomePremium, Ultimate)
Windows 10 (Cloud "S", IoTEnterprise, IoTEnterpriseS, ProfessionalSingleLanguage... etc)
Windows Server (Server Foundation, Storage Server, Home Server 2011... etc)
----------------------------------------------------------------------------------------------------
These editions are only KMS-activatable for 45 days at max:
Windows 10 Home edition variants
Windows 8.1 Core edition variants, Pro with Media Center, Pro Student
These editions are only KMS-activatable for 30 days at max:
Windows 8 Core edition variants, Pro with Media Center
Notes:
Supported Windows products do need volume conversion, only the GVLK (KMS key) is needed, which
the script will install accordingly.
KMS Activation works in all (MBR, GPT, UEFI, BIOS) systems.
====================================================================================================
Switches in the Script:
====================================================================================================
* Applies to MAS Separate Files version
- For unattended mode, run the scripts with /u parameter.
Activate.cmd /u
Uninstall.cmd /u
To create Renewal Task in unattended mode,
Renewal_Setup.cmd /rt
To create Renewal and Activation Task in unattended mode,
Renewal_Setup.cmd /rat
To create desktop context menu in unattended mode,
Renewal_Setup.cmd /dcm
To skip Windows activation in renewal script,
Renewal_Setup.cmd /rat /swa
or
Renewal_Setup.cmd /dcm /swa
----------------------------------------------------------------------
- Activate.cmd
- To run the script in Debug mode to find out the cause of errors in activation or just details,
search "set _Debug=" and change the value from 0 to 1.
- To replace KMS38 activation with KMS activation, search "set SkipKMS38=" and change the value
from 1 to 0.
- To skip Windows activation, search "set ActWindows=" and change the value from 1 to 0.
- To skip Office activation, search "set ActOffice=" and change the value from 1 to 0.
- This is not effective if Windows and/or Office installation is already Volume (GVLK installed)
- In [Online KMS + HWID] $OEM$ preactivation, Windows KMS activation is turned off
by default.
- To turn OFF auto conversion for Office C2R Retail to Volume, search "set AutoR2V=" and
change the value from 1 to 0.
- To set the script to use only one specific KMS server address, search "set KMS_Server="
paste the server address after the = sign.
- To clear the KMS cache, search "set Clear-KMS-Cache=" and change the value from 0 to 1.
- Registered KMS server address (cache) enables the system to automatically renew the license
(for next 180 days) every 7 days, as long as the server is online.
- This process is the same as how the legal KMS works, so no security program will flag
this behavior.
- Changing this option here won't have any effect if manual (Desktop Context menu) and/or auto,
renewal activation script is installed. [default (0)].
- I recommend leaving this option as default (0).
====================================================================================================
Manual Activation Process:
====================================================================================================
- Prerequisite:
online Public KMS Server List:
kms.srv.crsoo.com
kms.loli.beer
kms8.MSGuides.com
kms9.MSGuides.com
kms.zhuxiaole.org
kms.lolico.moe
kms.moeclub.org
Generic Volume License Key (GVLK):
Thanks to @abbodi1406 for the Key collection.
GVLK Edition
Windows 10
TX9XD-98N7V-6WMQ6-BX7FG-H8Q99 Home
3KHY7-WNT83-DGQKR-F7HPR-844BM Home N
7HNRX-D7KGG-3K4RQ-4WPJ4-YTDFH Home Single Language
PVMJN-6DFY6-9CCP6-7BKTT-D3WVR Home China
W269N-WFGWX-YVC9B-4J6C9-T83GX Pro
MH37W-N47XK-V7XM9-C7227-GCQG9 Pro N
6TP4R-GNPTD-KYYHQ-7B7DP-J447Y Pro Education
YVWGF-BXNMC-HTQYQ-CPQ99-66QFC Pro Education N
NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J Pro Workstation
9FNHH-K3HBT-3W4TD-6383H-6XYWF Pro Workstation N
NW6C2-QMPVW-D7KKK-3GKT6-VCFB2 Education
2WH4N-8QGBV-H22JP-CT43Q-MDWWJ Education N
NPPR9-FWDCX-D2C8J-H872K-2YT43 Enterprise
DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4 Enterprise N
YYVX9-NTFWV-6MDM3-9PT4T-4M68B Enterprise G
44RPN-FTY23-9VTTB-MP9BX-T84FV Enterprise G N
WNMTR-4C88C-JK8YV-HQ7T2-76DF9 Enterprise 2015 LTSB
2F77B-TNFGY-69QQF-B8YKP-D69TJ Enterprise 2015 LTSB N
DCPHK-NFMTC-H88MJ-PFHPY-QJ4BJ Enterprise 2016 LTSB
QFFDN-GRT3P-VKWWX-X7T3R-8B639 Enterprise 2016 LTSB N
M7XTQ-FN8P6-TTKYV-9D4CC-J462D Enterprise LTSC 2019
92NFX-8DJQP-P6BBQ-THF9C-7CG2H Enterprise LTSC 2019 N
CPWHC-NT2C7-VYW78-DHDB2-PG3GK Enterprise for Virtual Desktops
7NBT4-WGBQX-MP4H7-QXFF8-YP3KX Remote Server
NBTWJ-3DR69-3C4V8-C26MC-GQ9M6 Lean
Windows 8.1
M9Q9P-WNJJT-6PXPY-DWX8H-6XWKK Core
7B9N3-D94CG-YTVHR-QBPX3-RJP64 Core N
BB6NG-PQ82V-VRDPW-8XVD2-V8P66 Core Single Language
NCTT7-2RGK8-WMHRF-RY7YQ-JTXG3 Core China
XYTND-K6QKT-K2MRH-66RTM-43JKP Core ARM
GCRJD-8NW9H-F2CDX-CCM8D-9D6T9 Pro
HMCNV-VVBFX-7HMBH-CTY9B-B4FXY Pro N
789NJ-TQK6T-6XTH8-J39CJ-J8D3P Pro with Media Center
MHF9N-XY6XB-WVXMC-BTDCT-MKKG7 Enterprise
TT4HM-HN7YT-62K67-RGRQJ-JFFXW Enterprise N
NMMPB-38DD4-R2823-62W8D-VXKJB Embedded Industry Pro
FNFKF-PWTVT-9RC8H-32HB2-JB34X Embedded Industry Enterprise
VHXM3-NR6FT-RY6RT-CK882-KW2CJ Embedded Industry Automotive
3PY8R-QHNP9-W7XQD-G6DPH-3J2C9 with Bing
Q6HTR-N24GM-PMJFP-69CD8-2GXKR with Bing N
KF37N-VDV38-GRRTV-XH8X6-6F3BB with Bing Single Language
R962J-37N87-9VVK2-WJ74P-XTMHR with Bing China
MX3RK-9HNGX-K3QKC-6PJ3F-W8D7B Pro for Students
TNFGH-2R6PB-8XM3K-QYHX2-J4296 Pro for Students N
Windows 8
BN3D2-R7TKB-3YPBD-8DRP2-27GG4 Core
8N2M2-HWPGY-7PGT9-HGDD8-GVGGY Core N
2WN2H-YGCQR-KFX6K-CD6TF-84YXQ Core Single Language
4K36P-JN4VD-GDC6V-KDT89-DYFKP Core China
DXHJF-N9KQX-MFPVR-GHGQK-Y7RKV Core ARM
NG4HW-VH26C-733KW-K6F98-J8CK4 Pro
XCVCF-2NXM9-723PB-MHCB7-2RYQQ Pro N
GNBB8-YVD74-QJHX6-27H4K-8QHDG Pro with Media Center
32JNW-9KQ84-P47T8-D8GGY-CWCK7 Enterprise
JMNMF-RHW7P-DMY6X-RF3DR-X2BQT Enterprise N
RYXVT-BNQG7-VD29F-DBMRY-HT73M Embedded Industry Pro
NKB3R-R2F8T-3XCDP-7Q2KW-XWYQ2 Embedded Industry Enterprise
Windows 7
FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4 Professional
MRPKT-YTG23-K7D7T-X2JMM-QY7MG Professional N
W82YF-2Q76Y-63HXB-FGJG9-GF7QX Professional E
33PXH-7Y6KF-2VJC9-XBBR8-HVTHH Enterprise
YDRBP-3D83W-TY26F-D46B2-XCKRJ Enterprise N
C29WB-22CC8-VJ326-GHFJW-H9DH4 Enterprise E
YBYF6-BHCR3-JPKRB-CDW7B-F9BK4 Embedded POSReady 7
XGY72-BRBBT-FF8MH-2GG8H-W7KCW Embedded Standard
73KQT-CD9G6-K7TQG-66MRP-CQ22C Embedded ThinPC
Windows Server 2019
N69G4-B89J2-4G8F4-WWYCC-J464C Standard
WMDGN-G9PQG-XVVXX-R3X43-63DFG Datacenter
WVDHN-86M7X-466P6-VHXV7-YY726 Essentials
FDNH6-VW9RW-BXPJ7-4XTYG-239TB Azure Core
N2KJX-J94YW-TQVFB-DG9YT-724CC Standard ACor
6NMRW-2C8FM-D24W7-TQWMY-CWH2D Datacenter ACor
GRFBW-QNDC4-6QBHG-CCK3B-2PR88 ServerARM64
Windows Server 2016
WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY Standard
CB7KF-BWN84-R7R2Y-793K2-8XDDG Datacenter
JCKRF-N37P4-C2D82-9YXRT-4M63B Essentials
QN4C6-GBJD2-FB422-GHWJK-GJG2R Cloud Storage
VP34G-4NPPG-79JTQ-864T4-R3MQX Azure Core
PTXN8-JFHJM-4WC78-MPCBR-9W4KR Standard ACor
2HXDN-KRXHB-GPYC7-YCKFJ-7FVDG Datacenter ACor
K9FYF-G6NCK-73M32-XMVPY-F9DRR ServerARM64
Windows Server 2012 R2
D2N9P-3P6X9-2R39C-7RTCD-MDVJX Standard
W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9 Datacenter
KNC87-3J2TX-XB4WP-VCPJV-M4FWM Essentials
3NPTF-33KPT-GGBPR-YX76B-39KDD Cloud Storage
Windows Server 2012
XC9B7-NBPP2-83J2H-RHMBY-92BT4 Standard
48HP8-DN98B-MYWDG-T2DCC-8W83P Datacenter
HM7DN-YVMH3-46JC3-XYTG7-CYQJJ MultiPoint Standard
XNH6W-2V9GX-RGJ4K-Y8X6F-QGJ2G MultiPoint Premium
Windows Server 2008 R2
6TPJF-RBVHG-WBW2R-86QPH-6RTM4 Web
TT8MH-CG224-D3D7Q-498W2-9QCTX HPC
YC6KT-GKW9T-YTKYR-T4X34-R7VHC Standard
74YFP-3QFB3-KQT8W-PMXWJ-7M648 Datacenter
489J6-VHDMP-X63PK-3K798-CPX3Y Enterprise
GT63C-RJFQ3-4GMB6-BRFB9-CB83V Itanium
736RG-XDKJK-V34PF-BHK87-J6X3K MultiPoint Server
----------------------------------------------------------------------------------------------------
----------------------------------------------
Windows /Server (All VL Supported Versions)
----------------------------------------------
- Connect to the internet.
- Open CMD as Admin, and enter the following listed commands in the sequence in which they are given.
- Enter Generic Volume License Key (GVLK) (Replace %key% with the key from above list) with
the following command:
slmgr.vbs /ipk %key%
- Register the KMS Server, (Replace %server% with one of the above-listed servers)
(If activation is unsuccessful then try a different server) with the following command:
slmgr.vbs /skms %server%
- Activate Windows with the following command:
slmgr.vbs /ato
- Check Activation Status with the following command:
slmgr.vbs /dli
- Check Activation Expiry Date with the following command:
slmgr.vbs /xpr
- Clear the name of the KMS server (Optional) (It'll prevent activation auto-renewal) with the following command:
slmgr.vbs /ckms
- Done.
----------------------------------------------------------------------------
Office VL Activation (Office 2010, 2013, 2016, 2019) -
----------------------------------------------------------------------------
- Connect to the internet.
- Open CMD as Admin, and enter the following listed commands in the sequence in which they are given.
- If Office is installed as VL (Volume License) then there is no need to enter its key.
- If Office is installed as Retail, then you need to convert it to VL, by using C2R-R2V by @abbodi1406
https://forums.mydigitallife.net/posts/1150042
- Change to the directory where Office is installed.
If your system is 32-bit Office on 32-bit Windows or 64-bit Office on 64-bit Windows use the following:
For Office 2016 or 2019 enter the command:
cd "C:\Program Files\Microsoft Office\Office16"
For Office 2013 enter the command:
cd "C:\Program Files\Microsoft Office\Office15"
For Office 2010 enter the command:
cd "C:\Program Files\Microsoft Office\Office14"
--------------------------------------------------------------------------------
If your system is 32-bit Office on 64-bit Windows, use the following:
For Office 2016 or 2019 enter the command:
cd "C:\Program Files (x86)\Microsoft Office\Office16"
For Office 2013 enter the command:
cd "C:\Program Files (x86)\Microsoft Office\Office15"
For Office 2010 enter the command:
cd "C:\Program Files (x86)\Microsoft Office\Office14"
--------------------------------------------------------------------------------
- Once all of that is done correctly, you must register the KMS Server, (In the following,
replace %server% with one of the above-listed servers.) (If activation is unsuccessful
then try a different server.) with the following command:
cscript ospp.vbs /sethst:%server%
- Activate Office with the following command:
cscript ospp.vbs /act
- Check Activation Status with the following command:
cscript ospp.vbs /dstatus
- Clear the name of the KMS server, (Optional) (It'll prevent activation auto-renewal)
with the appropriate following commands:
To clear the KMS Server name for Office in Win 7, or Office 2010 on Win 8 or Win 10,
enter each of the following commands in the sequence which is given:
set "OSPP=HKLM\SOFTWARE\Microsoft\OfficeSoftwareProtectionPlatform"
reg delete "%OSPP%" /f /v KeyManagementServiceName 2>nul
reg delete "%OSPP%" /f /v KeyManagementServicePort 2>nul
reg delete "%OSPP%\59a52881-a989-479d-af46-f275c6370663" /f 2>nul
reg delete "%OSPP%\0ff1ce15-a989-479d-af46-f275c6370663" /f 2>nul
To clear the KMS server name for Office (except Office 2010) on Win 8 or Win 10, run the following command:
set "SPPk=SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform"
reg delete "HKLM\%SPPk%" /f /v KeyManagementServiceName 2>nul
reg delete "HKLM\%SPPk%" /f /v KeyManagementServicePort 2>nul
reg delete "HKLM\%SPPk%\0ff1ce15-a989-479d-af46-f275c6370663" /f 2>nul
reg delete "HKEY_USERS\S-1-5-20\%SPPk%\0ff1ce15-a989-479d-af46-f275c6370663" /f 2>nul
- Done.
====================================================================================================
Troubleshoot activation issues:
====================================================================================================
- Make sure the Internet is connected.
- Reboot the system and run the activation script, and if unsuccessful,
Open CMD as Admin, and enter the following command: (For Windows 10\8\8.1)
Dism /online /Cleanup-Image /RestoreHealth
- After its done, reboot the system and open CMD as Admin and enter the following command:
sfc.exe /scannow
- After it's done, reboot the system and run the activation script, and if unsuccessful,
open CMD as administrator again, and enter the following command:
slmgr.vbs /rearm
- Reboot the system and run the activation script, and if unsuccessful,
You may try to rebuild licensing Tokens.dat as suggested in https://support.microsoft.com/en-us/help/2736303
(this will require to repair Office afterwards.)
- Reboot the system and run the activation script, and if unsuccessful,
Try KMS_VL_ALL by @abbodi1406 https://forums.mydigitallife.net/posts/838808/
If still unsuccessful, it may be time to start over from the very beginning
and do a clean install of windows :D
-------------------------------
- If you have issues with Office activation, or got undesired or duplicate licenses (e.g. Office 2016 and 2019):
Download Office Scrubber pack from https://forums.mydigitallife.net/posts/1466365/
To get rid of any conflicted licenses, run Uninstall_Licenses.cmd, then you must start any
Office program to repair the licensing. You may also try Uninstall_Keys.cmd for similar manner.
If you wish to remove Office and leftovers completely and start clean:
Uninstall Office normally from Control Panel / Programs and Feature then run Full_Scrub.cmd
afterwards, install new Office.
- Can't activate Windows 7 with KMS: [Error 0xC004F035]
Some OEM licensed computers cannot be activated with KMS on WINDOWS 7.
Quote from the MS page https://tinyurl.com/yy8wfu5m
'Computers obtained through OEM channels that have an ACPI_SLIC table in the (BIOS) are
required to have a valid Windows marker in the same ACPI_SLIC table.
---Computers that have an ACPI_SLIC table without a valid Windows marker generate an error
when a volume edition of Windows 7 is installed.'
====================================================================================================
Credits:
====================================================================================================
@abbodi1406 Activate.cmd (KMS_VL_ALL)
https://forums.mydigitallife.net/posts/838808
(* With the great help from @RPO, Forked it to work with Multi KMS Servers,
Renewal task, Desktop context menu, $OEM$, etc for Online KMS)
Clear-KMS-Cache.cmd
https://forums.mydigitallife.net/posts/1511883
(*Applied it as it is)
Check-Activation-Status-wmic.cmd
https://forums.mydigitallife.net/posts/838808
(*Applied it as it is)
----------------------------------------------------------------------------------------------------
Online Public KMS Servers:
kms.srv.crsoo.com
kms.loli.beer
kms8.MSGuides.com
kms9.MSGuides.com
kms.zhuxiaole.org
kms.lolico.moe
kms.moeclub.org
----------------------------------------------------------------------------------------------------
Special Thanks to @RPO
For providing great support in making and improvements of this script,
To name a few,
Internet test with Powershell (No ping)
KMS server 1688 port test with Powershell
Multi KMS server integration
Scheduled task to renew the activation
And for solving countless problems in this batch script.
----------------------------------------------------------------------------------------------------
Kind Help:-
Thanks for having my back and answering all of my queries. (In no particular order)
@AveYo aka @BAU, @RPO, @leitek8, @mxman2k, @Yen, @abbodi1406
@BorrowedWifi For providing support in fixing English grammar errors in the Read Me.
----------------------------------------------------------------------------------------------------
This script is a part of 'Microsoft Activation Scripts' project.
Homepages-
NsaneForums: (Login Required) https://www.nsaneforums.com/topic/316668-microsoft-activation-scripts/
GitHub: https://github.com/massgravel/Microsoft-Activation-Scripts
GitLab: https://gitlab.com/massgrave/microsoft-activation-scripts
Maintained by @WindowsAddict
====================================================================================================