mirror of
https://github.com/massgravel/Microsoft-Activation-Scripts.git
synced 2025-12-08 05:34:57 +00:00
Compare commits
12 Commits
4bf82f576c
...
3.8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
27f21a13d5 | ||
|
|
7f3372d778 | ||
|
|
4958ddf474 | ||
|
|
eeae1dd931 | ||
|
|
d16661cc87 | ||
|
|
1ee7cd1e60 | ||
|
|
55cc6d95d1 | ||
|
|
f4e08dac3d | ||
|
|
979dfb750b | ||
|
|
82f7cfe5f4 | ||
|
|
0a35a00266 | ||
|
|
b064fc628a |
8
.gitattributes
vendored
8
.gitattributes
vendored
@@ -1,4 +1,4 @@
|
|||||||
# MAS export-ignore
|
MAS export-ignore
|
||||||
# LICENSE export-ignore
|
LICENSE export-ignore
|
||||||
# README.md export-ignore
|
README.md export-ignore
|
||||||
# .gitattributes export-ignore
|
.gitattributes export-ignore
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
@::r45f3r3-random
|
@::r45f3r3-random
|
||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@setlocal DisableDelayedExpansion
|
@setlocal DisableDelayedExpansion
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
@@ -719,8 +719,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -2127,7 +2127,9 @@ call :dk_color %Gray% "Checking SLC/WMI SKU [Difference Found
|
|||||||
|
|
||||||
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
||||||
|
|
||||||
if exist "%SysPath%\wlms\wlms.exe" (
|
sc query wlms %nul%
|
||||||
|
|
||||||
|
if %errorlevel% NEQ 1060 (
|
||||||
echo Checking Eval WLMS Service [Found]
|
echo Checking Eval WLMS Service [Found]
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -2575,8 +2577,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -3616,10 +3618,10 @@ reg unload HKU\!defname! %nul%
|
|||||||
|
|
||||||
if defined vnextexist (
|
if defined vnextexist (
|
||||||
echo:
|
echo:
|
||||||
call :dk_color %Gray% "Office vNext subscription detected:"
|
call :dk_color %Gray% "The logged-in Office account has a subscription license."
|
||||||
call :dk_color %Blue% "If active, this license overrides other activation methods."
|
call :dk_color %Blue% "If the subscription is active, it overrides other activation methods."
|
||||||
call :dk_color %Blue% "If expiring soon, rerun the script after expiration."
|
call :dk_color %Blue% "If it is expiring soon, rerun the activation script after it expires."
|
||||||
call :dk_color2 %Blue% "If expired and script activation fails, get help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it has already expired and activation fails, get help here - " %_Yellow% " %mas%troubleshoot"
|
||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -4544,8 +4546,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -5897,16 +5899,20 @@ call :dk_color %Gray% "In Windows settings, you may see a renewal notification f
|
|||||||
if /i %_actmethod%==Auto call :dk_color %Gray% "To avoid this notification, run the script with an internet connection to use the StaticCID method."
|
if /i %_actmethod%==Auto call :dk_color %Gray% "To avoid this notification, run the script with an internet connection to use the StaticCID method."
|
||||||
)
|
)
|
||||||
echo "%tsids%" | find /i "7e94be23-b161-4956-a682-146ab291774c" %nul1% && (
|
echo "%tsids%" | find /i "7e94be23-b161-4956-a682-146ab291774c" %nul1% && (
|
||||||
call :dk_color %Gray% "Windows Update can receive 1-3 years of ESU. 4-6 years ESU is not officially supported, but you can manually install updates."
|
call :dk_color %Gray% "Windows Update gets 1-3 years of ESU; 4-6 are unofficial but let you install Server 2008 R2 updates manually."
|
||||||
)
|
)
|
||||||
echo "%tsids%" | findstr /i "4afc620f-12a4-48ad-8015-2aebfbd6e47c 11be7019-a309-4763-9a09-091d1722ffe3" %nul1% && (
|
echo "%tsids%" | findstr /i "4afc620f-12a4-48ad-8015-2aebfbd6e47c 11be7019-a309-4763-9a09-091d1722ffe3" %nul1% && (
|
||||||
call :dk_color %Gray% "ESU is not officially supported on Windows 8.1, but you can manually install updates until Jan-2024."
|
call :dk_color %Gray% "ESU is not officially supported on Windows 8.1, but updates can be installed manually until January 2024."
|
||||||
)
|
)
|
||||||
echo "%tsids%" | findstr /i "0b533b5e-08b6-44f9-b885-c2de291ba456 f69e2d51-3bbd-4ddf-8da7-a145e9dca597" %nul1% && (
|
echo "%tsids%" | findstr /i "0b533b5e-08b6-44f9-b885-c2de291ba456 f69e2d51-3bbd-4ddf-8da7-a145e9dca597" %nul1% && (
|
||||||
call :dk_color %Gray% "Windows Update can receive 1-3 years of ESU. 4-6 years ESU is not officially supported, but it might be useful."
|
call :dk_color %Gray% "Windows Update gets 1-3 years of ESU; 4-6 are unofficial but may let you install LTSC updates manually."
|
||||||
|
if exist %SysPath%\ClipESUConsumer.exe (%SysPath%\ClipESUConsumer.exe -evaluateEligibility)
|
||||||
|
if exist %SysPath%\ClipESU.exe (%SysPath%\ClipESU.exe %nul%)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if defined esuexistsup echo Help: %mas%tsforge#windows-esu
|
||||||
|
|
||||||
if %_actwin%==1 for %%# in (407) do if %osSKU%==%%# (
|
if %_actwin%==1 for %%# in (407) do if %osSKU%==%%# (
|
||||||
call :dk_color %Red% "%winos% does not support activation on non-azure platforms."
|
call :dk_color %Red% "%winos% does not support activation on non-azure platforms."
|
||||||
)
|
)
|
||||||
@@ -12215,8 +12221,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -14965,6 +14971,7 @@ function DetectSubscription {
|
|||||||
function DetectAdbaClient
|
function DetectAdbaClient
|
||||||
{
|
{
|
||||||
$propADBA | foreach { set $_ (SlGetInfoSku $licID $_) }
|
$propADBA | foreach { set $_ (SlGetInfoSku $licID $_) }
|
||||||
|
DetectActType
|
||||||
CONOUT "`nAD Activation client information:"
|
CONOUT "`nAD Activation client information:"
|
||||||
CONOUT " Object Name: $ADActivationObjectName"
|
CONOUT " Object Name: $ADActivationObjectName"
|
||||||
CONOUT " Domain Name: $ADActivationObjectDN"
|
CONOUT " Domain Name: $ADActivationObjectDN"
|
||||||
@@ -15055,17 +15062,18 @@ function DetectKmsHost
|
|||||||
if ($null -NE $KeyManagementServiceNotificationRequests) {CONOUT " Notification: $KeyManagementServiceNotificationRequests"}
|
if ($null -NE $KeyManagementServiceNotificationRequests) {CONOUT " Notification: $KeyManagementServiceNotificationRequests"}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function DetectActType
|
||||||
|
{
|
||||||
|
$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp + '\' + $licID) "VLActivationType"
|
||||||
|
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp) "VLActivationType"}
|
||||||
|
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath) "VLActivationType"}
|
||||||
|
if ($null -EQ $VLType -Or $VLType -GT 3) {$VLType = 0}
|
||||||
|
if ($null -NE $VLType) {CONOUT "Configured Activation Type: $($VLActTypes[$VLType])"}
|
||||||
|
}
|
||||||
|
|
||||||
function DetectKmsClient
|
function DetectKmsClient
|
||||||
{
|
{
|
||||||
if ($win8)
|
if ($win8) {DetectActType}
|
||||||
{
|
|
||||||
$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp + '\' + $licID) "VLActivationType"
|
|
||||||
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp) "VLActivationType"}
|
|
||||||
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath) "VLActivationType"}
|
|
||||||
if ($null -EQ $VLType -Or $VLType -GT 3) {$VLType = 0}
|
|
||||||
}
|
|
||||||
if ($null -NE $VLType) {CONOUT "Configured Activation Type: $($VLActTypes[$VLType])"}
|
|
||||||
|
|
||||||
CONOUT "`r"
|
CONOUT "`r"
|
||||||
if ($LicenseStatus -NE 1) {
|
if ($LicenseStatus -NE 1) {
|
||||||
CONOUT "Please activate the product in order to update KMS client information values."
|
CONOUT "Please activate the product in order to update KMS client information values."
|
||||||
@@ -15313,6 +15321,7 @@ function GetResult($strSLP, $strApp, $entry)
|
|||||||
|
|
||||||
if ($win8 -And $VLActivationType -EQ 1) {
|
if ($win8 -And $VLActivationType -EQ 1) {
|
||||||
DetectAdbaClient
|
DetectAdbaClient
|
||||||
|
$cKmsClient = $null
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($winID -And $null -NE $cAvmClient) {
|
if ($winID -And $null -NE $cAvmClient) {
|
||||||
@@ -16258,7 +16267,7 @@ call :dk_color %Blue% "Rebuilding ClipSVC Licenses..."
|
|||||||
echo:
|
echo:
|
||||||
|
|
||||||
if %winbuild% LSS 10240 (
|
if %winbuild% LSS 10240 (
|
||||||
echo ClipSVC license rebuilding is supported only on Windows 10/11 and their Server equivalents.
|
echo ClipSVC license rebuilding is supported only on Windows 10/11.
|
||||||
echo Skipping...
|
echo Skipping...
|
||||||
goto :rebuildspptok
|
goto :rebuildspptok
|
||||||
)
|
)
|
||||||
@@ -16269,6 +16278,40 @@ echo Skipping...
|
|||||||
goto :rebuildspptok
|
goto :rebuildspptok
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set _partial=
|
||||||
|
set _keymatch=
|
||||||
|
for /f "tokens=2 delims==" %%# in ('%psc% "(([WMISEARCHER]'SELECT PartialProductKey FROM SoftwareLicensingProduct WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f'' AND PartialProductKey IS NOT NULL AND LicenseDependsOn is NULL').Get()).PartialProductKey | %% {echo ('PartialProductKey='+$_)}" %nul6%') do set "_partial=%%#"
|
||||||
|
for %%# in (8HV2C QPFCT 3V66T PKCKT WXCHW 8TYMD 6F4BT 8HVX7 KD72Y 7CFBY DRR8H P39PB DYJWX MDWWW 9HKR4 M7V2X 2YV77 WT2RQ MHBPB QPF8P 2YV66 VMJ2C DJ4F6 CKFFD YY74H J8JXD BHDCD T6R4W D32MH RRK69 3PJBP) do if /i "%_partial%"=="%%#" set _keymatch=1
|
||||||
|
|
||||||
|
if not defined _keymatch (
|
||||||
|
echo HWID activation key is not installed.
|
||||||
|
echo Skipping...
|
||||||
|
goto :rebuildspptok
|
||||||
|
)
|
||||||
|
|
||||||
|
%psc% "If([Activator]::CreateInstance([Type]::GetTypeFromCLSID([Guid]'{DCB00C01-570F-4A9B-8D69-199FDBA5723B}')).IsConnectedToInternet){Exit 0}Else{Exit 1}"
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo Internet is not connected.
|
||||||
|
echo Skipping...
|
||||||
|
goto :rebuildspptok
|
||||||
|
)
|
||||||
|
|
||||||
|
set resfail=
|
||||||
|
for %%# in (
|
||||||
|
licensing.mp.microsoft.com/v7.0/licenses/content
|
||||||
|
login.live.com/ppsecure/deviceaddcredential.srf
|
||||||
|
purchase.mp.microsoft.com/v7.0/users/me/orders
|
||||||
|
) do if not defined resfail (
|
||||||
|
%psc% "try { [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; irm https://%%# -Method POST } catch { if ($_.Exception.Response -eq $null) { Write-Host """"[%%#] $($_.Exception.Message)"""" -ForegroundColor Red -BackgroundColor Black; exit 3 } }"
|
||||||
|
if !errorlevel!==3 set resfail=1
|
||||||
|
)
|
||||||
|
|
||||||
|
if defined resfail (
|
||||||
|
echo Failed to connect to licensing servers.
|
||||||
|
echo Skipping...
|
||||||
|
goto :rebuildspptok
|
||||||
|
)
|
||||||
|
|
||||||
echo Stopping ClipSVC service...
|
echo Stopping ClipSVC service...
|
||||||
%psc% Stop-Service ClipSVC -force %nul%
|
%psc% Stop-Service ClipSVC -force %nul%
|
||||||
timeout /t 2 %nul%
|
timeout /t 2 %nul%
|
||||||
@@ -16584,8 +16627,8 @@ for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\16.0\Common\InstallRoot /v P
|
|||||||
|
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_86=Office 15.0 C2R x86" & call :getc2rrepair c2r15repair86 integratedoffice.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_86=Office 15.0 C2R x86" & call :getc2rrepair c2r15repair86 integratedoffice.exe)
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_68=Office 15.0 C2R x86/x64" & call :getc2rrepair c2r15repair68 integratedoffice.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_68=Office 15.0 C2R x86/x64" & call :getc2rrepair c2r15repair68 integratedoffice.exe)
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_86=Office 16.0 C2R x86" & call :getc2rrepair c2r16repair86 OfficeClickToRun.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_86=Office 16.0 C2R x86" & call :getc2r16repair c2r16repair86 OfficeClickToRun.exe)
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_68=Office 16.0 C2R x86/x64" & call :getc2rrepair c2r16repair68 OfficeClickToRun.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_68=Office 16.0 C2R x86/x64" & call :getc2r16repair c2r16repair68 OfficeClickToRun.exe)
|
||||||
|
|
||||||
set uwp16=
|
set uwp16=
|
||||||
if %winbuild% GEQ 10240 (
|
if %winbuild% GEQ 10240 (
|
||||||
@@ -16627,13 +16670,11 @@ echo ________________________________________________________________
|
|||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
if %counter% EQU 0 (
|
|
||||||
echo:
|
echo:
|
||||||
|
if %counter% EQU 0 (
|
||||||
echo Office ^(2010 and later^) is not installed.
|
echo Office ^(2010 and later^) is not installed.
|
||||||
goto :repairend
|
goto :repairend
|
||||||
echo:
|
) else if not defined c2r16_68 if not defined c2r16_86 (
|
||||||
) else (
|
|
||||||
echo:
|
|
||||||
call :dk_color %_Yellow% "A new window will appear, in that window you need to select [Quick Repair] option."
|
call :dk_color %_Yellow% "A new window will appear, in that window you need to select [Quick Repair] option."
|
||||||
if defined terminal (
|
if defined terminal (
|
||||||
call :dk_color %_Yellow% "Press [0] to continue..."
|
call :dk_color %_Yellow% "Press [0] to continue..."
|
||||||
@@ -16660,16 +16701,16 @@ echo Skipping repair for Office 14.0 C2R...
|
|||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
if defined msi14_68 if exist "%msi14repair68%" echo Running - "%msi14repair68%" & "%msi14repair68%"
|
if defined msi14_68 if exist "%msi14repair68%" echo Running - "%msi14repair68%" & "%msi14repair68%"
|
||||||
if defined msi14_86 if exist "%msi14repair86%" echo Running - "%msi14repair86%" & "%msi14repair86%"
|
if defined msi14_86 if exist "%msi14repair86%" echo Running - "%msi14repair86%" & "%msi14repair86%"
|
||||||
if defined msi15_68 if exist "%msi15repair68%" echo Running - "%msi15repair68%" & "%msi15repair68%"
|
if defined msi15_68 if exist "%msi15repair68%" echo Running - "%msi15repair68%" & "%msi15repair68%"
|
||||||
if defined msi15_86 if exist "%msi15repair86%" echo Running - "%msi15repair86%" & "%msi15repair86%"
|
if defined msi15_86 if exist "%msi15repair86%" echo Running - "%msi15repair86%" & "%msi15repair86%"
|
||||||
if defined msi16_68 if exist "%msi16repair68%" echo Running - "%msi16repair68%" & "%msi16repair68%"
|
if defined msi16_68 if exist "%msi16repair68%" echo Running - "%msi16repair68%" & "%msi16repair68%"
|
||||||
if defined msi16_86 if exist "%msi16repair86%" echo Running - "%msi16repair86%" & "%msi16repair86%"
|
if defined msi16_86 if exist "%msi16repair86%" echo Running - "%msi16repair86%" & "%msi16repair86%"
|
||||||
if defined c2r15_68 if exist "%c2r15repair68%" echo Running - "%c2r15repair68%" REPAIRUI RERUNMODE & "%c2r15repair68%" REPAIRUI RERUNMODE
|
if defined c2r15_68 if exist "%c2r15repair68%" echo Running - "%c2r15repair68%" REPAIRUI RERUNMODE & "%c2r15repair68%" REPAIRUI RERUNMODE
|
||||||
if defined c2r15_86 if exist "%c2r15repair86%" echo Running - "%c2r15repair86%" REPAIRUI RERUNMODE & "%c2r15repair86%" REPAIRUI RERUNMODE
|
if defined c2r15_86 if exist "%c2r15repair86%" echo Running - "%c2r15repair86%" REPAIRUI RERUNMODE & "%c2r15repair86%" REPAIRUI RERUNMODE
|
||||||
if defined c2r16_68 if exist "%c2r16repair68%" echo Running - "%c2r16repair68%" scenario=Repair & "%c2r16repair68%" scenario=Repair
|
if defined c2r16_68 if exist "%c2r16repair68%" echo Running - "%c2r16repair68%" Scenario=Repair RepairType=QuickRepair & "%c2r16repair68%" Scenario=Repair RepairType=QuickRepair
|
||||||
if defined c2r16_86 if exist "%c2r16repair86%" echo Running - "%c2r16repair86%" scenario=Repair & "%c2r16repair86%" scenario=Repair
|
if defined c2r16_86 if exist "%c2r16repair86%" echo Running - "%c2r16repair86%" Scenario=Repair RepairType=QuickRepair & "%c2r16repair86%" Scenario=Repair RepairType=QuickRepair
|
||||||
|
|
||||||
:repairend
|
:repairend
|
||||||
|
|
||||||
@@ -16689,6 +16730,13 @@ set "%1=%systemdrive%\Program Files\Microsoft Office 15\Client%%#\%2"
|
|||||||
)
|
)
|
||||||
exit /b
|
exit /b
|
||||||
|
|
||||||
|
:getc2r16repair
|
||||||
|
|
||||||
|
for %%# in (%_68% %_86%) do (
|
||||||
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %%#\ClickToRun\Configuration /v ClientFolder" %nul6%') do if exist "%%b\%2" (set "%1=%%b\%2")
|
||||||
|
)
|
||||||
|
exit /b
|
||||||
|
|
||||||
:getrepairsetup
|
:getrepairsetup
|
||||||
|
|
||||||
set "_common86=%systemdrive%\Program Files (x86)\Common Files\Microsoft Shared\OFFICE%2\Office Setup Controller\setup.exe"
|
set "_common86=%systemdrive%\Program Files (x86)\Common Files\Microsoft Shared\OFFICE%2\Office Setup Controller\setup.exe"
|
||||||
@@ -17192,8 +17240,8 @@ echo:
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -17396,7 +17444,7 @@ set _dismapi=1
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
set "keyflow=Retail Volume:GVLK Volume:MAK OEM:NONSLP OEM:DM PGS:TB Retail:TB:Eval"
|
set "keyflow=Retail OEM:NONSLP OEM:DM Volume:MAK Volume:GVLK PGS:TB Retail:TB:Eval"
|
||||||
|
|
||||||
call :ced_targetSKU %targetedition%
|
call :ced_targetSKU %targetedition%
|
||||||
if defined targetSKU call :ced_windowskey
|
if defined targetSKU call :ced_windowskey
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
@@ -428,8 +428,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -1820,7 +1820,9 @@ call :dk_color %Gray% "Checking SLC/WMI SKU [Difference Found
|
|||||||
|
|
||||||
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
||||||
|
|
||||||
if exist "%SysPath%\wlms\wlms.exe" (
|
sc query wlms %nul%
|
||||||
|
|
||||||
|
if %errorlevel% NEQ 1060 (
|
||||||
echo Checking Eval WLMS Service [Found]
|
echo Checking Eval WLMS Service [Found]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
@@ -474,8 +474,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -1513,10 +1513,10 @@ reg unload HKU\!defname! %nul%
|
|||||||
|
|
||||||
if defined vnextexist (
|
if defined vnextexist (
|
||||||
echo:
|
echo:
|
||||||
call :dk_color %Gray% "Office vNext subscription detected:"
|
call :dk_color %Gray% "The logged-in Office account has a subscription license."
|
||||||
call :dk_color %Blue% "If active, this license overrides other activation methods."
|
call :dk_color %Blue% "If the subscription is active, it overrides other activation methods."
|
||||||
call :dk_color %Blue% "If expiring soon, rerun the script after expiration."
|
call :dk_color %Blue% "If it is expiring soon, rerun the activation script after it expires."
|
||||||
call :dk_color2 %Blue% "If expired and script activation fails, get help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it has already expired and activation fails, get help here - " %_Yellow% " %mas%troubleshoot"
|
||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -2506,7 +2506,9 @@ call :dk_color %Gray% "Checking SLC/WMI SKU [Difference Found
|
|||||||
|
|
||||||
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
||||||
|
|
||||||
if exist "%SysPath%\wlms\wlms.exe" (
|
sc query wlms %nul%
|
||||||
|
|
||||||
|
if %errorlevel% NEQ 1060 (
|
||||||
echo Checking Eval WLMS Service [Found]
|
echo Checking Eval WLMS Service [Found]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
@@ -536,8 +536,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -1491,10 +1491,10 @@ reg unload HKU\!defname! %nul%
|
|||||||
|
|
||||||
if defined vnextexist (
|
if defined vnextexist (
|
||||||
echo:
|
echo:
|
||||||
call :dk_color %Gray% "Office vNext subscription detected:"
|
call :dk_color %Gray% "The logged-in Office account has a subscription license."
|
||||||
call :dk_color %Blue% "If active, this license overrides other activation methods."
|
call :dk_color %Blue% "If the subscription is active, it overrides other activation methods."
|
||||||
call :dk_color %Blue% "If expiring soon, rerun the script after expiration."
|
call :dk_color %Blue% "If it is expiring soon, rerun the activation script after it expires."
|
||||||
call :dk_color2 %Blue% "If expired and script activation fails, get help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it has already expired and activation fails, get help here - " %_Yellow% " %mas%troubleshoot"
|
||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -3569,7 +3569,9 @@ call :dk_color %Gray% "Checking SLC/WMI SKU [Difference Found
|
|||||||
|
|
||||||
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
||||||
|
|
||||||
if exist "%SysPath%\wlms\wlms.exe" (
|
sc query wlms %nul%
|
||||||
|
|
||||||
|
if %errorlevel% NEQ 1060 (
|
||||||
echo Checking Eval WLMS Service [Found]
|
echo Checking Eval WLMS Service [Found]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
@@ -606,8 +606,8 @@ if not defined results (
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
)
|
)
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
@@ -1959,16 +1959,20 @@ call :dk_color %Gray% "In Windows settings, you may see a renewal notification f
|
|||||||
if /i %_actmethod%==Auto call :dk_color %Gray% "To avoid this notification, run the script with an internet connection to use the StaticCID method."
|
if /i %_actmethod%==Auto call :dk_color %Gray% "To avoid this notification, run the script with an internet connection to use the StaticCID method."
|
||||||
)
|
)
|
||||||
echo "%tsids%" | find /i "7e94be23-b161-4956-a682-146ab291774c" %nul1% && (
|
echo "%tsids%" | find /i "7e94be23-b161-4956-a682-146ab291774c" %nul1% && (
|
||||||
call :dk_color %Gray% "Windows Update can receive 1-3 years of ESU. 4-6 years ESU is not officially supported, but you can manually install updates."
|
call :dk_color %Gray% "Windows Update gets 1-3 years of ESU; 4-6 are unofficial but let you install Server 2008 R2 updates manually."
|
||||||
)
|
)
|
||||||
echo "%tsids%" | findstr /i "4afc620f-12a4-48ad-8015-2aebfbd6e47c 11be7019-a309-4763-9a09-091d1722ffe3" %nul1% && (
|
echo "%tsids%" | findstr /i "4afc620f-12a4-48ad-8015-2aebfbd6e47c 11be7019-a309-4763-9a09-091d1722ffe3" %nul1% && (
|
||||||
call :dk_color %Gray% "ESU is not officially supported on Windows 8.1, but you can manually install updates until Jan-2024."
|
call :dk_color %Gray% "ESU is not officially supported on Windows 8.1, but updates can be installed manually until January 2024."
|
||||||
)
|
)
|
||||||
echo "%tsids%" | findstr /i "0b533b5e-08b6-44f9-b885-c2de291ba456 f69e2d51-3bbd-4ddf-8da7-a145e9dca597" %nul1% && (
|
echo "%tsids%" | findstr /i "0b533b5e-08b6-44f9-b885-c2de291ba456 f69e2d51-3bbd-4ddf-8da7-a145e9dca597" %nul1% && (
|
||||||
call :dk_color %Gray% "Windows Update can receive 1-3 years of ESU. 4-6 years ESU is not officially supported, but it might be useful."
|
call :dk_color %Gray% "Windows Update gets 1-3 years of ESU; 4-6 are unofficial but may let you install LTSC updates manually."
|
||||||
|
if exist %SysPath%\ClipESUConsumer.exe (%SysPath%\ClipESUConsumer.exe -evaluateEligibility)
|
||||||
|
if exist %SysPath%\ClipESU.exe (%SysPath%\ClipESU.exe %nul%)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if defined esuexistsup echo Help: %mas%tsforge#windows-esu
|
||||||
|
|
||||||
if %_actwin%==1 for %%# in (407) do if %osSKU%==%%# (
|
if %_actwin%==1 for %%# in (407) do if %osSKU%==%%# (
|
||||||
call :dk_color %Red% "%winos% does not support activation on non-azure platforms."
|
call :dk_color %Red% "%winos% does not support activation on non-azure platforms."
|
||||||
)
|
)
|
||||||
@@ -2454,10 +2458,10 @@ reg unload HKU\!defname! %nul%
|
|||||||
|
|
||||||
if defined vnextexist (
|
if defined vnextexist (
|
||||||
echo:
|
echo:
|
||||||
call :dk_color %Gray% "Office vNext subscription detected:"
|
call :dk_color %Gray% "The logged-in Office account has a subscription license."
|
||||||
call :dk_color %Blue% "If active, this license overrides other activation methods."
|
call :dk_color %Blue% "If the subscription is active, it overrides other activation methods."
|
||||||
call :dk_color %Blue% "If expiring soon, rerun the script after expiration."
|
call :dk_color %Blue% "If it is expiring soon, rerun the activation script after it expires."
|
||||||
call :dk_color2 %Blue% "If expired and script activation fails, get help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it has already expired and activation fails, get help here - " %_Yellow% " %mas%troubleshoot"
|
||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -3579,7 +3583,9 @@ call :dk_color %Gray% "Checking SLC/WMI SKU [Difference Found
|
|||||||
|
|
||||||
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
|
||||||
|
|
||||||
if exist "%SysPath%\wlms\wlms.exe" (
|
sc query wlms %nul%
|
||||||
|
|
||||||
|
if %errorlevel% NEQ 1060 (
|
||||||
echo Checking Eval WLMS Service [Found]
|
echo Checking Eval WLMS Service [Found]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
@@ -400,8 +400,8 @@ echo:
|
|||||||
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
call :dk_color %Blue% "Go back to Main Menu, select Troubleshoot and run DISM Restore and SFC Scan options."
|
||||||
call :dk_color %Blue% "After that, restart system and try activation again."
|
call :dk_color %Blue% "After that, restart system and try activation again."
|
||||||
echo:
|
echo:
|
||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%in-place_repair_upgrade
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "If it still shows the same error, do this - " %_Yellow% " %mas%in-place_repair_upgrade"
|
||||||
goto dk_done
|
goto dk_done
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -604,7 +604,7 @@ set _dismapi=1
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
set "keyflow=Retail Volume:GVLK Volume:MAK OEM:NONSLP OEM:DM PGS:TB Retail:TB:Eval"
|
set "keyflow=Retail OEM:NONSLP OEM:DM Volume:MAK Volume:GVLK PGS:TB Retail:TB:Eval"
|
||||||
|
|
||||||
call :ced_targetSKU %targetedition%
|
call :ced_targetSKU %targetedition%
|
||||||
if defined targetSKU call :ced_windowskey
|
if defined targetSKU call :ced_windowskey
|
||||||
|
|||||||
@@ -518,6 +518,7 @@ function DetectSubscription {
|
|||||||
function DetectAdbaClient
|
function DetectAdbaClient
|
||||||
{
|
{
|
||||||
$propADBA | foreach { set $_ (SlGetInfoSku $licID $_) }
|
$propADBA | foreach { set $_ (SlGetInfoSku $licID $_) }
|
||||||
|
DetectActType
|
||||||
CONOUT "`nAD Activation client information:"
|
CONOUT "`nAD Activation client information:"
|
||||||
CONOUT " Object Name: $ADActivationObjectName"
|
CONOUT " Object Name: $ADActivationObjectName"
|
||||||
CONOUT " Domain Name: $ADActivationObjectDN"
|
CONOUT " Domain Name: $ADActivationObjectDN"
|
||||||
@@ -608,17 +609,18 @@ function DetectKmsHost
|
|||||||
if ($null -NE $KeyManagementServiceNotificationRequests) {CONOUT " Notification: $KeyManagementServiceNotificationRequests"}
|
if ($null -NE $KeyManagementServiceNotificationRequests) {CONOUT " Notification: $KeyManagementServiceNotificationRequests"}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function DetectActType
|
||||||
|
{
|
||||||
|
$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp + '\' + $licID) "VLActivationType"
|
||||||
|
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp) "VLActivationType"}
|
||||||
|
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath) "VLActivationType"}
|
||||||
|
if ($null -EQ $VLType -Or $VLType -GT 3) {$VLType = 0}
|
||||||
|
if ($null -NE $VLType) {CONOUT "Configured Activation Type: $($VLActTypes[$VLType])"}
|
||||||
|
}
|
||||||
|
|
||||||
function DetectKmsClient
|
function DetectKmsClient
|
||||||
{
|
{
|
||||||
if ($win8)
|
if ($win8) {DetectActType}
|
||||||
{
|
|
||||||
$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp + '\' + $licID) "VLActivationType"
|
|
||||||
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath + '\' + $strApp) "VLActivationType"}
|
|
||||||
if ($null -EQ $VLType) {$VLType = strGetRegistry ($SPKeyPath) "VLActivationType"}
|
|
||||||
if ($null -EQ $VLType -Or $VLType -GT 3) {$VLType = 0}
|
|
||||||
}
|
|
||||||
if ($null -NE $VLType) {CONOUT "Configured Activation Type: $($VLActTypes[$VLType])"}
|
|
||||||
|
|
||||||
CONOUT "`r"
|
CONOUT "`r"
|
||||||
if ($LicenseStatus -NE 1) {
|
if ($LicenseStatus -NE 1) {
|
||||||
CONOUT "Please activate the product in order to update KMS client information values."
|
CONOUT "Please activate the product in order to update KMS client information values."
|
||||||
@@ -866,6 +868,7 @@ function GetResult($strSLP, $strApp, $entry)
|
|||||||
|
|
||||||
if ($win8 -And $VLActivationType -EQ 1) {
|
if ($win8 -And $VLActivationType -EQ 1) {
|
||||||
DetectAdbaClient
|
DetectAdbaClient
|
||||||
|
$cKmsClient = $null
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($winID -And $null -NE $cAvmClient) {
|
if ($winID -And $null -NE $cAvmClient) {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@set masver=3.7
|
@set masver=3.8
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
|
||||||
@@ -619,7 +619,7 @@ call :dk_color %Blue% "Rebuilding ClipSVC Licenses..."
|
|||||||
echo:
|
echo:
|
||||||
|
|
||||||
if %winbuild% LSS 10240 (
|
if %winbuild% LSS 10240 (
|
||||||
echo ClipSVC license rebuilding is supported only on Windows 10/11 and their Server equivalents.
|
echo ClipSVC license rebuilding is supported only on Windows 10/11.
|
||||||
echo Skipping...
|
echo Skipping...
|
||||||
goto :rebuildspptok
|
goto :rebuildspptok
|
||||||
)
|
)
|
||||||
@@ -630,6 +630,40 @@ echo Skipping...
|
|||||||
goto :rebuildspptok
|
goto :rebuildspptok
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set _partial=
|
||||||
|
set _keymatch=
|
||||||
|
for /f "tokens=2 delims==" %%# in ('%psc% "(([WMISEARCHER]'SELECT PartialProductKey FROM SoftwareLicensingProduct WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f'' AND PartialProductKey IS NOT NULL AND LicenseDependsOn is NULL').Get()).PartialProductKey | %% {echo ('PartialProductKey='+$_)}" %nul6%') do set "_partial=%%#"
|
||||||
|
for %%# in (8HV2C QPFCT 3V66T PKCKT WXCHW 8TYMD 6F4BT 8HVX7 KD72Y 7CFBY DRR8H P39PB DYJWX MDWWW 9HKR4 M7V2X 2YV77 WT2RQ MHBPB QPF8P 2YV66 VMJ2C DJ4F6 CKFFD YY74H J8JXD BHDCD T6R4W D32MH RRK69 3PJBP) do if /i "%_partial%"=="%%#" set _keymatch=1
|
||||||
|
|
||||||
|
if not defined _keymatch (
|
||||||
|
echo HWID activation key is not installed.
|
||||||
|
echo Skipping...
|
||||||
|
goto :rebuildspptok
|
||||||
|
)
|
||||||
|
|
||||||
|
%psc% "If([Activator]::CreateInstance([Type]::GetTypeFromCLSID([Guid]'{DCB00C01-570F-4A9B-8D69-199FDBA5723B}')).IsConnectedToInternet){Exit 0}Else{Exit 1}"
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo Internet is not connected.
|
||||||
|
echo Skipping...
|
||||||
|
goto :rebuildspptok
|
||||||
|
)
|
||||||
|
|
||||||
|
set resfail=
|
||||||
|
for %%# in (
|
||||||
|
licensing.mp.microsoft.com/v7.0/licenses/content
|
||||||
|
login.live.com/ppsecure/deviceaddcredential.srf
|
||||||
|
purchase.mp.microsoft.com/v7.0/users/me/orders
|
||||||
|
) do if not defined resfail (
|
||||||
|
%psc% "try { [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; irm https://%%# -Method POST } catch { if ($_.Exception.Response -eq $null) { Write-Host """"[%%#] $($_.Exception.Message)"""" -ForegroundColor Red -BackgroundColor Black; exit 3 } }"
|
||||||
|
if !errorlevel!==3 set resfail=1
|
||||||
|
)
|
||||||
|
|
||||||
|
if defined resfail (
|
||||||
|
echo Failed to connect to licensing servers.
|
||||||
|
echo Skipping...
|
||||||
|
goto :rebuildspptok
|
||||||
|
)
|
||||||
|
|
||||||
echo Stopping ClipSVC service...
|
echo Stopping ClipSVC service...
|
||||||
%psc% Stop-Service ClipSVC -force %nul%
|
%psc% Stop-Service ClipSVC -force %nul%
|
||||||
timeout /t 2 %nul%
|
timeout /t 2 %nul%
|
||||||
@@ -945,8 +979,8 @@ for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\16.0\Common\InstallRoot /v P
|
|||||||
|
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_86=Office 15.0 C2R x86" & call :getc2rrepair c2r15repair86 integratedoffice.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_86=Office 15.0 C2R x86" & call :getc2rrepair c2r15repair86 integratedoffice.exe)
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_68=Office 15.0 C2R x86/x64" & call :getc2rrepair c2r15repair68 integratedoffice.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\15.0\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses\ProPlus*.xrm-ms" (set "c2r15_68=Office 15.0 C2R x86/x64" & call :getc2rrepair c2r15repair68 integratedoffice.exe)
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_86=Office 16.0 C2R x86" & call :getc2rrepair c2r16repair86 OfficeClickToRun.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_86%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_86=Office 16.0 C2R x86" & call :getc2r16repair c2r16repair86 OfficeClickToRun.exe)
|
||||||
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_68=Office 16.0 C2R x86/x64" & call :getc2rrepair c2r16repair68 OfficeClickToRun.exe)
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %_68%\ClickToRun /v InstallPath" %nul6%') do if exist "%%b\root\Licenses16\ProPlus*.xrm-ms" (set "c2r16_68=Office 16.0 C2R x86/x64" & call :getc2r16repair c2r16repair68 OfficeClickToRun.exe)
|
||||||
|
|
||||||
set uwp16=
|
set uwp16=
|
||||||
if %winbuild% GEQ 10240 (
|
if %winbuild% GEQ 10240 (
|
||||||
@@ -988,13 +1022,11 @@ echo ________________________________________________________________
|
|||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
if %counter% EQU 0 (
|
|
||||||
echo:
|
echo:
|
||||||
|
if %counter% EQU 0 (
|
||||||
echo Office ^(2010 and later^) is not installed.
|
echo Office ^(2010 and later^) is not installed.
|
||||||
goto :repairend
|
goto :repairend
|
||||||
echo:
|
) else if not defined c2r16_68 if not defined c2r16_86 (
|
||||||
) else (
|
|
||||||
echo:
|
|
||||||
call :dk_color %_Yellow% "A new window will appear, in that window you need to select [Quick Repair] option."
|
call :dk_color %_Yellow% "A new window will appear, in that window you need to select [Quick Repair] option."
|
||||||
if defined terminal (
|
if defined terminal (
|
||||||
call :dk_color %_Yellow% "Press [0] to continue..."
|
call :dk_color %_Yellow% "Press [0] to continue..."
|
||||||
@@ -1021,16 +1053,16 @@ echo Skipping repair for Office 14.0 C2R...
|
|||||||
echo:
|
echo:
|
||||||
)
|
)
|
||||||
|
|
||||||
if defined msi14_68 if exist "%msi14repair68%" echo Running - "%msi14repair68%" & "%msi14repair68%"
|
if defined msi14_68 if exist "%msi14repair68%" echo Running - "%msi14repair68%" & "%msi14repair68%"
|
||||||
if defined msi14_86 if exist "%msi14repair86%" echo Running - "%msi14repair86%" & "%msi14repair86%"
|
if defined msi14_86 if exist "%msi14repair86%" echo Running - "%msi14repair86%" & "%msi14repair86%"
|
||||||
if defined msi15_68 if exist "%msi15repair68%" echo Running - "%msi15repair68%" & "%msi15repair68%"
|
if defined msi15_68 if exist "%msi15repair68%" echo Running - "%msi15repair68%" & "%msi15repair68%"
|
||||||
if defined msi15_86 if exist "%msi15repair86%" echo Running - "%msi15repair86%" & "%msi15repair86%"
|
if defined msi15_86 if exist "%msi15repair86%" echo Running - "%msi15repair86%" & "%msi15repair86%"
|
||||||
if defined msi16_68 if exist "%msi16repair68%" echo Running - "%msi16repair68%" & "%msi16repair68%"
|
if defined msi16_68 if exist "%msi16repair68%" echo Running - "%msi16repair68%" & "%msi16repair68%"
|
||||||
if defined msi16_86 if exist "%msi16repair86%" echo Running - "%msi16repair86%" & "%msi16repair86%"
|
if defined msi16_86 if exist "%msi16repair86%" echo Running - "%msi16repair86%" & "%msi16repair86%"
|
||||||
if defined c2r15_68 if exist "%c2r15repair68%" echo Running - "%c2r15repair68%" REPAIRUI RERUNMODE & "%c2r15repair68%" REPAIRUI RERUNMODE
|
if defined c2r15_68 if exist "%c2r15repair68%" echo Running - "%c2r15repair68%" REPAIRUI RERUNMODE & "%c2r15repair68%" REPAIRUI RERUNMODE
|
||||||
if defined c2r15_86 if exist "%c2r15repair86%" echo Running - "%c2r15repair86%" REPAIRUI RERUNMODE & "%c2r15repair86%" REPAIRUI RERUNMODE
|
if defined c2r15_86 if exist "%c2r15repair86%" echo Running - "%c2r15repair86%" REPAIRUI RERUNMODE & "%c2r15repair86%" REPAIRUI RERUNMODE
|
||||||
if defined c2r16_68 if exist "%c2r16repair68%" echo Running - "%c2r16repair68%" scenario=Repair & "%c2r16repair68%" scenario=Repair
|
if defined c2r16_68 if exist "%c2r16repair68%" echo Running - "%c2r16repair68%" Scenario=Repair RepairType=QuickRepair & "%c2r16repair68%" Scenario=Repair RepairType=QuickRepair
|
||||||
if defined c2r16_86 if exist "%c2r16repair86%" echo Running - "%c2r16repair86%" scenario=Repair & "%c2r16repair86%" scenario=Repair
|
if defined c2r16_86 if exist "%c2r16repair86%" echo Running - "%c2r16repair86%" Scenario=Repair RepairType=QuickRepair & "%c2r16repair86%" Scenario=Repair RepairType=QuickRepair
|
||||||
|
|
||||||
:repairend
|
:repairend
|
||||||
|
|
||||||
@@ -1050,6 +1082,13 @@ set "%1=%systemdrive%\Program Files\Microsoft Office 15\Client%%#\%2"
|
|||||||
)
|
)
|
||||||
exit /b
|
exit /b
|
||||||
|
|
||||||
|
:getc2r16repair
|
||||||
|
|
||||||
|
for %%# in (%_68% %_86%) do (
|
||||||
|
for /f "skip=2 tokens=2*" %%a in ('"reg query %%#\ClickToRun\Configuration /v ClientFolder" %nul6%') do if exist "%%b\%2" (set "%1=%%b\%2")
|
||||||
|
)
|
||||||
|
exit /b
|
||||||
|
|
||||||
:getrepairsetup
|
:getrepairsetup
|
||||||
|
|
||||||
set "_common86=%systemdrive%\Program Files (x86)\Common Files\Microsoft Shared\OFFICE%2\Office Setup Controller\setup.exe"
|
set "_common86=%systemdrive%\Program Files (x86)\Common Files\Microsoft Shared\OFFICE%2\Office Setup Controller\setup.exe"
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<h1 align="center">Microsoft Activation Scripts (MAS)</h1>
|
<h1 align="center">Microsoft Activation Scripts (MAS)</h1>
|
||||||
|
|
||||||
<p align="center">Open-source Windows and Office activator featuring HWID, Ohook, TSforge, KMS38, and Online KMS activation methods, along with advanced troubleshooting.</p>
|
<p align="center">Open-source Windows and Office activator featuring HWID, Ohook, TSforge, and Online KMS activation methods, along with advanced troubleshooting.</p>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
@@ -63,8 +63,8 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
```
|
```
|
||||||
Latest Version: 3.7
|
Latest Version: 3.8
|
||||||
Release date: 11-Sep-2025
|
Release date: 11-Nov-2025
|
||||||
```
|
```
|
||||||
|
|
||||||
### [Troubleshooting / Help](https://massgrave.dev/troubleshoot)
|
### [Troubleshooting / Help](https://massgrave.dev/troubleshoot)
|
||||||
|
|||||||
Reference in New Issue
Block a user