mirror of
https://github.com/massgravel/Microsoft-Activation-Scripts.git
synced 2025-02-22 04:59:56 +00:00
Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
ed455ca5fc | ||
![]() |
569681da0e | ||
![]() |
9936a1d3a1 |
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -91,7 +92,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Microsoft_Activation_Scripts
|
||||
title Microsoft_Activation_Scripts %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -109,14 +110,18 @@ if defined _args echo "%_args%" | find /i "/" >nul && set _MASunattended=1
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
set winbuild=1
|
||||
set "nul1=1>nul"
|
||||
set "nul2=2>nul"
|
||||
set "nul6=2^>nul"
|
||||
set "nul=>nul 2>&1"
|
||||
|
||||
set winbuild=1
|
||||
set psc=powershell.exe
|
||||
for /f "tokens=6 delims=[]. " %%G in ('ver') do set winbuild=%%G
|
||||
|
||||
set _NCS=1
|
||||
if %winbuild% LSS 10586 set _NCS=0
|
||||
if %winbuild% GEQ 10586 reg query "HKCU\Console" /v ForceV2 2>nul | find /i "0x0" 1>nul && (set _NCS=0)
|
||||
if %winbuild% GEQ 10586 reg query "HKCU\Console" /v ForceV2 %nul2% | find /i "0x0" %nul1% && (set _NCS=0)
|
||||
|
||||
call :_colorprep
|
||||
|
||||
@ -151,13 +156,13 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
echo "!_batf!" | find /i "!_ttemp!" 1>nul && (
|
||||
echo "!_batf!" | find /i "!_ttemp!" %nul1% && (
|
||||
if /i not "!_work!"=="!_ttemp!" (
|
||||
%nceline%
|
||||
echo Script is launched from the temp folder,
|
||||
@ -172,15 +177,15 @@ goto MASend
|
||||
|
||||
:: Elevate script as admin and pass arguments and preventing loop
|
||||
|
||||
>nul fltmc || (
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%nceline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto MASend
|
||||
)
|
||||
|
||||
if not exist "%SystemRoot%\Temp\" mkdir "%SystemRoot%\Temp" 1>nul 2>nul
|
||||
if not exist "%SystemRoot%\Temp\" mkdir "%SystemRoot%\Temp" %nul%
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
@ -199,6 +204,35 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
if not defined _MASunattended (
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
)
|
||||
cls
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Run script with parameters in unattended mode
|
||||
|
||||
set _elev=
|
||||
@ -229,7 +263,7 @@ setlocal EnableDelayedExpansion
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Microsoft_Activation_Scripts 2.2
|
||||
title Microsoft_Activation_Scripts %masver%
|
||||
mode 76, 30
|
||||
|
||||
echo:
|
||||
@ -258,7 +292,7 @@ choice /C:123456780 /N
|
||||
set _erl=%errorlevel%
|
||||
|
||||
if %_erl%==9 exit /b
|
||||
if %_erl%==8 start https://%mas%/troubleshoot.html & goto :MainMenu
|
||||
if %_erl%==8 start %mas%troubleshoot.html & goto :MainMenu
|
||||
if %_erl%==7 goto:Extras
|
||||
if %_erl%==6 setlocal & call :troubleshoot & cls & endlocal & goto :MainMenu
|
||||
if %_erl%==5 setlocal & call :_Check_Status_wmi & cls & endlocal & goto :MainMenu
|
||||
@ -431,11 +465,13 @@ set _NoEditionChange=0
|
||||
|
||||
:: If value is changed in above lines or parameter is used then script will run in unattended mode
|
||||
|
||||
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
cls
|
||||
color 07
|
||||
title HWID Activation
|
||||
title HWID Activation %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -526,7 +562,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -534,7 +570,7 @@ setlocal EnableDelayedExpansion
|
||||
|
||||
cls
|
||||
mode 108, 34
|
||||
title HWID Activation
|
||||
title HWID Activation %masver%
|
||||
|
||||
:: Start Windows update service at the beginning and in later checks as well, because in some normal conditions one kick is not enough
|
||||
|
||||
@ -1183,7 +1219,7 @@ set showfix=1
|
||||
if defined safeboot_option (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[System is running in safe mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[Safe mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
@ -1197,7 +1233,7 @@ call :dk_color2 %Red% "Checking Audit Mode " %Blue% "[IMAGE_
|
||||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinPE" /v InstRoot %nul% && (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[System is running in WinPE mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[WinPE mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
@ -1539,11 +1575,13 @@ set _rem=0
|
||||
|
||||
:: If value is changed in above lines or parameter is used then script will run in unattended mode
|
||||
|
||||
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Ohook Activation
|
||||
title Ohook Activation %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -1626,7 +1664,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -1639,7 +1677,7 @@ if %_rem%==1 goto :oh_uninstall
|
||||
if %_unattended%==0 (
|
||||
cls
|
||||
mode 76, 25
|
||||
title Ohook Activation
|
||||
title Ohook Activation %masver%
|
||||
|
||||
echo:
|
||||
echo:
|
||||
@ -1675,7 +1713,7 @@ cls
|
||||
mode 128, 32
|
||||
%psc% "&{$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=32;$B.Height=300;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
|
||||
title Ohook Activation
|
||||
title Ohook Activation %masver%
|
||||
|
||||
echo:
|
||||
echo Initializing...
|
||||
@ -1886,33 +1924,45 @@ call :oh_hookinstall
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Find remnants of Office vNext license block and remove it because it stops non vNext licenses from appearing
|
||||
:: https://learn.microsoft.com/en-us/office/troubleshoot/activation/reset-office-365-proplus-activation-state
|
||||
|
||||
set _sid=
|
||||
set sub_next=
|
||||
set kNext=HKCU\SOFTWARE\Microsoft\Office\16.0\Common\Licensing
|
||||
for /f "tokens=* delims=" %%a in ('%psc% "$userSIDs = Get-WmiObject -Class Win32_UserAccount | ForEach-Object {write-host $_.SID}" %nul6%') do (if defined _sid (set "_sid=!_sid! HKU\%%a") else (set "_sid=HKU\%%a"))
|
||||
|
||||
reg query %kNext%\LicensingNext /v MigrationToV5Done %nul2% | find /i "0x1" %nul% && (
|
||||
reg query %kNext%\LicensingNext %nul2% | findstr /i "volume retail" %nul2% | findstr /i "0x2 0x3" %nul% && (
|
||||
if not defined _sid (
|
||||
call :dk_color %Red% "Checking User Accounts SID [Not Found]"
|
||||
)
|
||||
|
||||
for %%# in (!_sid! HKCU) do if not defined sub_next (
|
||||
reg query %%#\Software\Microsoft\Office\16.0\Common\Licensing\LicensingNext /v MigrationToV5Done %nul2% | find /i "0x1" %nul% && (
|
||||
reg query %%#\Software\Microsoft\Office\16.0\Common\Licensing\LicensingNext %nul2% | findstr /i "volume retail" %nul2% | findstr /i "0x2 0x3" %nul% && (
|
||||
set sub_next=1
|
||||
reg delete %kNext% /f %nul%
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
if defined sub_next (
|
||||
reg query %kNext%\LicensingNext %nul% && (
|
||||
call :dk_color %Red% "Removing Office vNext Block [Failed]"
|
||||
) || (
|
||||
echo Removing Office vNext Block [Successful]
|
||||
)
|
||||
if defined sub_next for %%# in (!_sid! HKCU) do (
|
||||
reg delete %%#\Software\Microsoft\Office\16.0\Common\Licensing /f %nul%
|
||||
reg delete %%#\Software\Microsoft\Office\16.0\Common\Identity /f %nul%
|
||||
reg delete %%#\Software\Microsoft\Office\16.0\Registration /f %nul%
|
||||
)
|
||||
|
||||
if defined sub_next echo Removing Office vNext Block [Successful]
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Subscription licenses attempt to validate the license and may show a banner "There was a problem checking this device's license status.", other products don't do that.
|
||||
:: A simple registry entry can skip this check
|
||||
:: Subscription products attempt to validate the license and may show a banner "There was a problem checking this device's license status."
|
||||
:: Resiliency registry entry can skip this check
|
||||
|
||||
if defined _sublic (
|
||||
echo Adding a Reg To Skip License Check [Successful]
|
||||
reg add HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /v "TimeOfLastHeartbeatFailure" /t REG_SZ /d "2033-08-18T22:18:45Z" /f %nul%
|
||||
if defined o16c2r (
|
||||
for %%# in (!_sid! HKCU) do (reg delete %%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /f %nul%)
|
||||
for %%# in (!_sid! HKCU) do (
|
||||
reg query %%# %nul% && (
|
||||
reg add %%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /v "TimeOfLastHeartbeatFailure" /t REG_SZ /d "2040-01-01T00:00:00Z" /f %nul%
|
||||
)
|
||||
)
|
||||
echo Adding Reg Keys To Skip License Check [Successful]
|
||||
)
|
||||
|
||||
::========================================================================================================================================
|
||||
@ -1997,7 +2047,7 @@ goto :dk_done
|
||||
|
||||
cls
|
||||
mode 99, 28
|
||||
title Uninstall Ohook Activation
|
||||
title Uninstall Ohook Activation %masver%
|
||||
|
||||
set _present=
|
||||
set _unerror=
|
||||
@ -2034,15 +2084,21 @@ if exist "%%~A\Microsoft %%~G\root\vfs\%%#\sppc*dll" (set _present=1& del /s /f
|
||||
)
|
||||
)
|
||||
|
||||
reg query HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /s %nul2% | find /i "2033" %nul% && (
|
||||
reg query HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency %nul% && (
|
||||
echo:
|
||||
echo Deleting - HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency
|
||||
echo Deleting - Registry keys to skip license check
|
||||
reg delete HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /f
|
||||
|
||||
for /f "tokens=* delims=" %%a in ('%psc% "$userSIDs = Get-WmiObject -Class Win32_UserAccount | ForEach-Object {write-host $_.SID}" %nul6%') do (if defined _sid (set "_sid=!_sid! %%a") else (set "_sid=%%a"))
|
||||
for %%# in (!_sid!) do (reg query HKU\%%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency %nul% && (
|
||||
reg delete HKU\%%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /f
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\0ff1ce15-a989-479d-af46-f275c6370663" %nul% && (
|
||||
echo:
|
||||
echo Deleting - Registry key to prevent non-genuine banner
|
||||
echo Deleting - Registry keys to prevent non-genuine banner
|
||||
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\0ff1ce15-a989-479d-af46-f275c6370663" /f
|
||||
)
|
||||
|
||||
@ -2179,6 +2235,9 @@ exit /b
|
||||
set ierror=
|
||||
set hasherror=
|
||||
|
||||
if %_hook%==sppc32.dll set offset=2564
|
||||
if %_hook%==sppc64.dll set offset=3076
|
||||
|
||||
del /s /q "%_hookPath%\sppcs.dll" %nul%
|
||||
del /s /q "%_hookPath%\sppc.dll" %nul%
|
||||
|
||||
@ -2188,7 +2247,7 @@ if exist "%_hookPath%\sppc.dll" set ierror=1
|
||||
mklink "%_hookPath%\sppcs.dll" "%_sppcPath%" %nul%
|
||||
if not %errorlevel%==0 set ierror=1
|
||||
|
||||
if not exist "%_hookPath%\sppc.dll" call :oh_extractdll "%_hookPath%\sppc.dll"
|
||||
if not exist "%_hookPath%\sppc.dll" call :oh_extractdll "%_hookPath%\sppc.dll" "%offset%"
|
||||
if not exist "%_hookPath%\sppc.dll" set ierror=1
|
||||
|
||||
echo:
|
||||
@ -2200,7 +2259,9 @@ set error=1
|
||||
call :dk_color %Red% "Symlinking Systems sppc.dll [Failed]"
|
||||
call :dk_color %Red% "Extracting Custom %_hook% [Failed]"
|
||||
echo ["%_hookPath%\sppc.dll"]
|
||||
call :dk_color %Blue% "Close Office apps if they are running and try again."
|
||||
echo:
|
||||
call :dk_color %Blue% "Close ALL Office apps including Outlook and try again."
|
||||
call :dk_color %Blue% "If its still not resolved then restart system and try again."
|
||||
)
|
||||
|
||||
if not defined ierror (
|
||||
@ -2519,7 +2580,7 @@ exit /b
|
||||
:oh_extractdll
|
||||
|
||||
set b=
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':%_hook%\:.*';$bytes = [Con%b%vert]::FromBas%b%e64String($f[1]); $PePath='%1'; $m=[io.file]::ReadAllText('!_batp!') -split ':hexedit\:.*';iex ($m[1]);" %nul2% | find /i "Error found" %nul1% && set hasherror=1
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':%_hook%\:.*';$bytes = [Con%b%vert]::FromBas%b%e64String($f[1]); $PePath='%1'; $offset='%2'; $m=[io.file]::ReadAllText('!_batp!') -split ':hexedit\:.*';iex ($m[1]);" %nul2% | find /i "Error found" %nul1% && set hasherror=1
|
||||
exit /b
|
||||
|
||||
:hexedit:
|
||||
@ -2541,7 +2602,7 @@ $Imagehlp = $TypeBuilder.CreateType()
|
||||
|
||||
# Offset information
|
||||
$timestampOffset = 136
|
||||
$exportTimestampOffset = 3076
|
||||
$exportTimestampOffset = $offset
|
||||
$checkSumOffset = 216
|
||||
|
||||
# Calculate timestamp
|
||||
@ -2597,10 +2658,10 @@ $MemoryStream.Close()
|
||||
:: This below blocks of text is encoded in base64 format
|
||||
:: The blocks in labels "sppc64.dll" and "sppc32.dll" contains below files
|
||||
::
|
||||
:: C6DF24DEEF2E83813DEE9C81DDD9793A3D60C117A4E8E231B82E32B3192927E7 *sppc64.dll
|
||||
:: E6AC83560C19EC7EB868C50EA97EA0ED5632A397A9F43C17E24E6DE4A694D118 *sppc32.dll
|
||||
:: e6ac83560c19ec7eb868c50ea97ea0ed5632a397a9f43c17e24e6de4a694d118 *sppc32.dll
|
||||
:: c6df24deef2e83813dee9c81ddd9793a3d60c117a4e8e231b82e32b3192927e7 *sppc64.dll
|
||||
::
|
||||
:: The files are encoded in base64 to make MAS AIO version. Alternatively, you can use MAS separate files version
|
||||
:: The files are encoded in base64 to make MAS AIO version.
|
||||
::
|
||||
:: mass grave[.]dev/ohook
|
||||
:: Here you can find the files source code and info on how to rebuild the identical sppc.dll files
|
||||
@ -2761,11 +2822,13 @@ set _NoEditionChange=0
|
||||
|
||||
:: If value is changed in above lines or parameter is used then script will run in unattended mode
|
||||
|
||||
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
cls
|
||||
color 07
|
||||
title KMS38 Activation
|
||||
title KMS38 Activation %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -2852,7 +2915,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -2865,7 +2928,7 @@ if %_rem%==1 goto :k_uninstall
|
||||
if %_unattended%==0 (
|
||||
cls
|
||||
mode 76, 25
|
||||
title KMS38 Activation
|
||||
title KMS38 Activation %masver%
|
||||
|
||||
echo:
|
||||
echo:
|
||||
@ -2896,7 +2959,7 @@ goto :k_menu
|
||||
|
||||
cls
|
||||
mode 108, 34
|
||||
title KMS38 Activation
|
||||
title KMS38 Activation %masver%
|
||||
|
||||
echo:
|
||||
echo Initializing...
|
||||
@ -3373,7 +3436,7 @@ goto :dk_done
|
||||
|
||||
cls
|
||||
mode 99, 28
|
||||
title Remove KMS38 Protection
|
||||
title Remove KMS38 Protection %masver%
|
||||
|
||||
%nul% reg delete "HKLM\%specific_kms%" /f
|
||||
%nul% reg delete "HKU\S-1-5-20\%specific_kms%" /f
|
||||
@ -3613,7 +3676,7 @@ exit /b
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Online KMS Activation
|
||||
title Online KMS Activation %masver%
|
||||
|
||||
:: You are not supposed to edit anything below this.
|
||||
|
||||
@ -3685,7 +3748,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
set "_Local=%LocalAppData%"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
@ -3739,7 +3802,7 @@ if defined _unattended if not defined _unattendedact goto Done
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
set "_title=Online KMS Activation"
|
||||
set "_title=Online KMS Activation %masver%"
|
||||
set _gui=
|
||||
|
||||
:_KMS_Menu
|
||||
@ -3948,7 +4011,7 @@ mode con cols=98 lines=31
|
||||
%psc% "&%_buf%"
|
||||
title %_title%
|
||||
) else (
|
||||
title Online KMS Activation
|
||||
title Online KMS Activation %masver%
|
||||
)
|
||||
|
||||
if defined _gui if %_Debug%==1 mode con cols=98 lines=30
|
||||
@ -6742,7 +6805,7 @@ goto :eof
|
||||
|
||||
cls
|
||||
mode con: cols=91 lines=30
|
||||
title Online KMS Complete Uninstall
|
||||
title Online KMS Complete Uninstall %masver%
|
||||
|
||||
set "key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\taskcache\tasks"
|
||||
|
||||
@ -6853,7 +6916,7 @@ exit /b
|
||||
|
||||
cls
|
||||
mode con cols=91 lines=30
|
||||
title Install Activation Auto-Renewal
|
||||
title Install Activation Auto-Renewal %masver%
|
||||
|
||||
set error_=
|
||||
set "_dest=%ProgramFiles%\Activation-Renewal"
|
||||
@ -6882,7 +6945,7 @@ if exist "%_temp%\.*" rmdir /s /q "%_temp%\" %nul%
|
||||
|
||||
call :createInfo.txt
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split \":_extracttask\:.*`r`n\"; [io.file]::WriteAllText('%_dest%\Activation_task.cmd', '@REM Dummy ' + '%random%' + [Environment]::NewLine + $f[1].Trim(), [System.Text.Encoding]::ASCII);"
|
||||
title Install Activation Auto-Renewal
|
||||
title Install Activation Auto-Renewal %masver%
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
@ -8473,7 +8536,7 @@ PrintLicensesInformation -Mode "Device"
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Troubleshoot
|
||||
title Troubleshoot %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -8518,7 +8581,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
:: Check desktop location
|
||||
|
||||
@ -8540,7 +8603,7 @@ setlocal EnableDelayedExpansion
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Troubleshoot
|
||||
title Troubleshoot %masver%
|
||||
mode con cols=77 lines=30
|
||||
|
||||
echo:
|
||||
@ -8701,7 +8764,7 @@ goto :at_back
|
||||
:retokens
|
||||
|
||||
cls
|
||||
mode con cols=115 lines=32
|
||||
mode con cols=125 lines=32
|
||||
%psc% "&{$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=31;$B.Height=200;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
title Fix Licensing ^(ClipSVC ^+ Office vNext ^+ SPP ^+ OSPP^)
|
||||
|
||||
@ -8714,6 +8777,8 @@ echo - It helps in troubleshooting activation issues.
|
||||
echo:
|
||||
echo - This option will,
|
||||
echo - Deactivate Windows and Office, you may need to reactivate
|
||||
echo If Windows is activated with motherboard / OEM / Digital license then don't worry
|
||||
echo:
|
||||
echo - Clear ClipSVC, Office vNext, SPP and OSPP licenses
|
||||
echo - Fix SPP permissions of tokens folder and registries
|
||||
echo - Trigger the repair option for Office.
|
||||
@ -8834,7 +8899,8 @@ for %%# in (wlidsvc LicenseManager) do (net stop %%# /y %nul% & net start %%# /y
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Clear Office vNext License
|
||||
:: Find remnants of Office vNext license block and remove it because it stops non vNext licenses from appearing
|
||||
:: https://learn.microsoft.com/en-us/office/troubleshoot/activation/reset-office-365-proplus-activation-state
|
||||
|
||||
:cleanvnext
|
||||
|
||||
@ -8873,21 +8939,28 @@ echo Deleted Folder - !_Local!\Microsoft\Office\Licenses\
|
||||
echo Not Found - !_Local!\Microsoft\Office\Licenses\
|
||||
)
|
||||
|
||||
|
||||
echo:
|
||||
for %%# in (
|
||||
HKCU\Software\Microsoft\Office\16.0\Common\Licensing
|
||||
HKCU\Software\Microsoft\Office\16.0\Registration
|
||||
for /f "tokens=* delims=" %%a in ('%psc% "$userSIDs = Get-WmiObject -Class Win32_UserAccount | ForEach-Object {write-host $_.SID}" %nul6%') do (if defined _sid (set "_sid=!_sid! HKU\%%a") else (set "_sid=HKU\%%a"))
|
||||
|
||||
set regfound=
|
||||
for %%# in (HKCU !_sid!) do (
|
||||
for %%A in (
|
||||
%%#\Software\Microsoft\Office\16.0\Common\Licensing
|
||||
%%#\Software\Microsoft\Office\16.0\Common\Identity
|
||||
%%#\Software\Microsoft\Office\16.0\Registration
|
||||
) do (
|
||||
reg query %%# %nul% && (
|
||||
reg delete %%# /f %nul% && (
|
||||
echo Deleted Registry - %%#
|
||||
reg query %%A %nul% && (
|
||||
set regfound=1
|
||||
reg delete %%A /f %nul% && (
|
||||
echo Deleted Registry - %%A
|
||||
) || (
|
||||
echo Failed to Delete - %%#
|
||||
)
|
||||
) || (
|
||||
echo Not Found Registry - %%#
|
||||
echo Failed to Delete - %%A
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
if not defined regfound echo Not Found - Office vNext Registry Keys
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
@ -9545,7 +9618,7 @@ set _stg=0
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Change Windows Edition
|
||||
title Change Windows Edition %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -9607,7 +9680,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -9769,7 +9842,7 @@ echo "!_target!" | find /i " %%# " %nul1% || set "_target= !_target! %%# "
|
||||
|
||||
if defined _target (
|
||||
for %%# in (%_target%) do (
|
||||
echo %%# | findstr /i "CountrySpecific CloudEdition" %nul% || (set "_ntarget=!_ntarget! %%#")
|
||||
echo %%# | findstr /i "CountrySpecific CloudEdition ServerRdsh" %nul% || (set "_ntarget=!_ntarget! %%#")
|
||||
)
|
||||
)
|
||||
|
||||
@ -9861,18 +9934,31 @@ goto ced_done
|
||||
:: Changing from Core to Non-Core & Changing editions in Windows build older than 17134 requires "changepk /productkey" or DISM Api method and restart
|
||||
:: In other cases, editions can be changed instantly with "slmgr /ipk"
|
||||
|
||||
if %_dismapi%==1 (
|
||||
mode con cols=105 lines=40
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':checkrebootflag\:.*';iex ($f[1]);" | find /i "True" %nul% && (
|
||||
%eline%
|
||||
echo Pending Reboot flags found.
|
||||
echo:
|
||||
echo Restart the system and try again.
|
||||
goto ced_done
|
||||
)
|
||||
)
|
||||
|
||||
cls
|
||||
%line%
|
||||
echo:
|
||||
if defined dismnotworking call :dk_color %_Yellow% "DISM.exe is not responding."
|
||||
echo Changing the Current Edition [%osedition%] %winbuild% to [%targetedition%]
|
||||
echo:
|
||||
|
||||
if %_dismapi%==1 (
|
||||
call :dk_color %Blue% "Notes-"
|
||||
call :dk_color %Green% "Notes-"
|
||||
echo:
|
||||
echo - Save your work before continue, system will auto restart.
|
||||
echo:
|
||||
echo - You will need to activate with HWID option once the edition is changed.
|
||||
%line%
|
||||
echo:
|
||||
choice /C:21 /N /M "[1] Continue [2] %_exitmsg% : "
|
||||
if !errorlevel!==1 exit /b
|
||||
@ -9904,7 +9990,7 @@ echo Check this page for help. %mas%troubleshoot
|
||||
|
||||
if %_dismapi%==1 (
|
||||
echo:
|
||||
echo Applying the DISM API method with %_chan% Key %key%
|
||||
echo Applying the DISM API method with %_chan% Key %key%. Please wait...
|
||||
echo:
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':dismapi\:.*';& ([ScriptBlock]::Create($f[1])) %targetedition% %key%;"
|
||||
timeout /t 3 %nul1%
|
||||
@ -9924,7 +10010,16 @@ cls
|
||||
mode con cols=105 lines=32
|
||||
%psc% "&{$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=31;$B.Height=200;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':checkrebootflag\:.*';iex ($f[1]);" | find /i "True" %nul% && (
|
||||
%eline%
|
||||
echo Pending reboot flags found.
|
||||
echo:
|
||||
echo Restart the system and try again.
|
||||
goto ced_done
|
||||
)
|
||||
|
||||
echo:
|
||||
if defined dismnotworking call :dk_color %_Yellow% "Note - DISM.exe is not responding."
|
||||
echo Changing the Current Edition [%osedition%] %winbuild% to [%targetedition%]
|
||||
echo:
|
||||
call :dk_color %Blue% "Important - Save your work before continue, system will auto reboot."
|
||||
@ -9973,8 +10068,17 @@ goto ced_done
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':checkrebootflag\:.*';iex ($f[1]);" | find /i "True" %nul% && (
|
||||
%eline%
|
||||
echo Pending reboot flags found.
|
||||
echo:
|
||||
echo Restart the system and try again.
|
||||
goto ced_done
|
||||
)
|
||||
|
||||
cls
|
||||
echo:
|
||||
if defined dismnotworking call :dk_color %_Yellow% "Note - DISM.exe is not responding."
|
||||
echo Changing the Current Edition [%osedition%] %winbuild% to [%targetedition%]
|
||||
echo:
|
||||
echo Applying the command with %_chan% Key
|
||||
@ -10001,11 +10105,38 @@ exit /b
|
||||
|
||||
if %_wmic% EQU 1 set "chkedi=for /f "tokens=2 delims==" %%a in ('"wmic path SoftwareLicensingProduct where (ApplicationID='55c92734-d682-4d71-983e-d6ec3f16059f') get LicenseFamily /VALUE" %nul6%')"
|
||||
if %_wmic% EQU 0 set "chkedi=for /f "tokens=2 delims==" %%a in ('%psc% "(([WMISEARCHER]'SELECT LicenseFamily FROM SoftwareLicensingProduct WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f''').Get()).LicenseFamily ^| %% {echo ('LicenseFamily='+$_)}" %nul6%')"
|
||||
%chkedi% do (call set "_wtarget= !_wtarget! %%a ")
|
||||
%chkedi% do (
|
||||
call if exist %Systemdrive%\Windows\System32\spp\tokens\skus\%%a (
|
||||
call set "_wtarget= !_wtarget! %%a "
|
||||
)
|
||||
)
|
||||
exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check pending reboot flags
|
||||
|
||||
:checkrebootflag:
|
||||
function Test-PendingReboot
|
||||
{
|
||||
if (Test-Path -Path "$env:windir\WinSxS\pending.xml") { return $true }
|
||||
if (Get-ChildItem "HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending" -EA Ignore) { return $true }
|
||||
if (Get-Item "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired" -EA Ignore) { return $true }
|
||||
try {
|
||||
$util = [wmiclass]"\\.\root\ccm\clientsdk:CCM_ClientUtilities"
|
||||
$status = $util.DetermineIfRebootPending()
|
||||
if(($status -ne $null) -and $status.RebootPending){
|
||||
return $true
|
||||
}
|
||||
}catch{}
|
||||
|
||||
return $false
|
||||
}
|
||||
Test-PendingReboot
|
||||
:checkrebootflag:
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:ced_windowskey
|
||||
|
||||
for %%# in (pkeyhelper.dll) do @if "%%~$PATH:#"=="" exit /b
|
||||
|
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -97,7 +98,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title HWID Activation
|
||||
title HWID Activation %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -194,7 +195,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -218,7 +219,7 @@ goto dk_done
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%eline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto dk_done
|
||||
)
|
||||
@ -240,9 +241,37 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
if not %_unattended%==1 (
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :dk_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
)
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
cls
|
||||
mode 108, 34
|
||||
title HWID Activation
|
||||
title HWID Activation %masver%
|
||||
|
||||
:: Start Windows update service at the beginning and in later checks as well, because in some normal conditions one kick is not enough
|
||||
|
||||
@ -891,7 +920,7 @@ set showfix=1
|
||||
if defined safeboot_option (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[System is running in safe mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[Safe mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
@ -905,7 +934,7 @@ call :dk_color2 %Red% "Checking Audit Mode " %Blue% "[IMAGE_
|
||||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinPE" /v InstRoot %nul% && (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[System is running in WinPE mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[WinPE mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -100,7 +101,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title KMS38 Activation
|
||||
title KMS38 Activation %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -193,7 +194,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -217,7 +218,7 @@ goto dk_done
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%eline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto dk_done
|
||||
)
|
||||
@ -239,6 +240,35 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
if not %_unattended%==1 (
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :dk_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
)
|
||||
cls
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
if %_rem%==1 goto :k_uninstall
|
||||
|
||||
:k_menu
|
||||
@ -246,7 +276,7 @@ if %_rem%==1 goto :k_uninstall
|
||||
if %_unattended%==0 (
|
||||
cls
|
||||
mode 76, 25
|
||||
title KMS38 Activation
|
||||
title KMS38 Activation %masver%
|
||||
|
||||
echo:
|
||||
echo:
|
||||
@ -277,7 +307,7 @@ goto :k_menu
|
||||
|
||||
cls
|
||||
mode 108, 34
|
||||
title KMS38 Activation
|
||||
title KMS38 Activation %masver%
|
||||
|
||||
echo:
|
||||
echo Initializing...
|
||||
@ -754,7 +784,7 @@ goto :dk_done
|
||||
|
||||
cls
|
||||
mode 99, 28
|
||||
title Remove KMS38 Protection
|
||||
title Remove KMS38 Protection %masver%
|
||||
|
||||
%nul% reg delete "HKLM\%specific_kms%" /f
|
||||
%nul% reg delete "HKU\S-1-5-20\%specific_kms%" /f
|
||||
@ -1037,7 +1067,7 @@ set showfix=1
|
||||
if defined safeboot_option (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[System is running in safe mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[Safe mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
@ -1051,7 +1081,7 @@ call :dk_color2 %Red% "Checking Audit Mode " %Blue% "[IMAGE_
|
||||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinPE" /v InstRoot %nul% && (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[System is running in WinPE mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[WinPE mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
|
@ -1,3 +0,0 @@
|
||||
<html>
|
||||
<meta http-equiv="refresh" content="0; url=https://massgrave.dev/ohook.html#Custom_sppcdll_Info">
|
||||
</html>
|
Binary file not shown.
Binary file not shown.
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -97,7 +98,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Ohook Activation
|
||||
title Ohook Activation %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -186,7 +187,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -210,7 +211,7 @@ goto dk_done
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%eline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto dk_done
|
||||
)
|
||||
@ -232,6 +233,35 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
if not %_unattended%==1 (
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :dk_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
)
|
||||
cls
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
if %_rem%==1 goto :oh_uninstall
|
||||
|
||||
:oh_menu
|
||||
@ -239,7 +269,7 @@ if %_rem%==1 goto :oh_uninstall
|
||||
if %_unattended%==0 (
|
||||
cls
|
||||
mode 76, 25
|
||||
title Ohook Activation
|
||||
title Ohook Activation %masver%
|
||||
|
||||
echo:
|
||||
echo:
|
||||
@ -275,17 +305,7 @@ cls
|
||||
mode 128, 32
|
||||
%psc% "&{$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=32;$B.Height=300;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
|
||||
title Ohook Activation
|
||||
|
||||
:: Check files
|
||||
|
||||
for %%# in (sppc32.dll sppc64.dll) do (
|
||||
if not exist "!_work!\BIN\%%#" (
|
||||
%eline%
|
||||
echo '%%#' file is missing in 'BIN' folder. Aborting...
|
||||
goto dk_done
|
||||
)
|
||||
)
|
||||
title Ohook Activation %masver%
|
||||
|
||||
echo:
|
||||
echo Initializing...
|
||||
@ -496,33 +516,45 @@ call :oh_hookinstall
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Find remnants of Office vNext license block and remove it because it stops non vNext licenses from appearing
|
||||
:: https://learn.microsoft.com/en-us/office/troubleshoot/activation/reset-office-365-proplus-activation-state
|
||||
|
||||
set _sid=
|
||||
set sub_next=
|
||||
set kNext=HKCU\SOFTWARE\Microsoft\Office\16.0\Common\Licensing
|
||||
for /f "tokens=* delims=" %%a in ('%psc% "$userSIDs = Get-WmiObject -Class Win32_UserAccount | ForEach-Object {write-host $_.SID}" %nul6%') do (if defined _sid (set "_sid=!_sid! HKU\%%a") else (set "_sid=HKU\%%a"))
|
||||
|
||||
reg query %kNext%\LicensingNext /v MigrationToV5Done %nul2% | find /i "0x1" %nul% && (
|
||||
reg query %kNext%\LicensingNext %nul2% | findstr /i "volume retail" %nul2% | findstr /i "0x2 0x3" %nul% && (
|
||||
if not defined _sid (
|
||||
call :dk_color %Red% "Checking User Accounts SID [Not Found]"
|
||||
)
|
||||
|
||||
for %%# in (!_sid! HKCU) do if not defined sub_next (
|
||||
reg query %%#\Software\Microsoft\Office\16.0\Common\Licensing\LicensingNext /v MigrationToV5Done %nul2% | find /i "0x1" %nul% && (
|
||||
reg query %%#\Software\Microsoft\Office\16.0\Common\Licensing\LicensingNext %nul2% | findstr /i "volume retail" %nul2% | findstr /i "0x2 0x3" %nul% && (
|
||||
set sub_next=1
|
||||
reg delete %kNext% /f %nul%
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
if defined sub_next (
|
||||
reg query %kNext%\LicensingNext %nul% && (
|
||||
call :dk_color %Red% "Removing Office vNext Block [Failed]"
|
||||
) || (
|
||||
echo Removing Office vNext Block [Successful]
|
||||
)
|
||||
if defined sub_next for %%# in (!_sid! HKCU) do (
|
||||
reg delete %%#\Software\Microsoft\Office\16.0\Common\Licensing /f %nul%
|
||||
reg delete %%#\Software\Microsoft\Office\16.0\Common\Identity /f %nul%
|
||||
reg delete %%#\Software\Microsoft\Office\16.0\Registration /f %nul%
|
||||
)
|
||||
|
||||
if defined sub_next echo Removing Office vNext Block [Successful]
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Subscription licenses attempt to validate the license and may show a banner "There was a problem checking this device's license status.", other products don't do that.
|
||||
:: A simple registry entry can skip this check
|
||||
:: Subscription products attempt to validate the license and may show a banner "There was a problem checking this device's license status."
|
||||
:: Resiliency registry entry can skip this check
|
||||
|
||||
if defined _sublic (
|
||||
echo Adding a Reg To Skip License Check [Successful]
|
||||
reg add HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /v "TimeOfLastHeartbeatFailure" /t REG_SZ /d "2033-08-18T22:18:45Z" /f %nul%
|
||||
if defined o16c2r (
|
||||
for %%# in (!_sid! HKCU) do (reg delete %%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /f %nul%)
|
||||
for %%# in (!_sid! HKCU) do (
|
||||
reg query %%# %nul% && (
|
||||
reg add %%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /v "TimeOfLastHeartbeatFailure" /t REG_SZ /d "2040-01-01T00:00:00Z" /f %nul%
|
||||
)
|
||||
)
|
||||
echo Adding Reg Keys To Skip License Check [Successful]
|
||||
)
|
||||
|
||||
::========================================================================================================================================
|
||||
@ -607,7 +639,7 @@ goto :dk_done
|
||||
|
||||
cls
|
||||
mode 99, 28
|
||||
title Uninstall Ohook Activation
|
||||
title Uninstall Ohook Activation %masver%
|
||||
|
||||
set _present=
|
||||
set _unerror=
|
||||
@ -644,15 +676,21 @@ if exist "%%~A\Microsoft %%~G\root\vfs\%%#\sppc*dll" (set _present=1& del /s /f
|
||||
)
|
||||
)
|
||||
|
||||
reg query HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /s %nul2% | find /i "2033" %nul% && (
|
||||
reg query HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency %nul% && (
|
||||
echo:
|
||||
echo Deleting - HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency
|
||||
echo Deleting - Registry keys to skip license check
|
||||
reg delete HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /f
|
||||
|
||||
for /f "tokens=* delims=" %%a in ('%psc% "$userSIDs = Get-WmiObject -Class Win32_UserAccount | ForEach-Object {write-host $_.SID}" %nul6%') do (if defined _sid (set "_sid=!_sid! %%a") else (set "_sid=%%a"))
|
||||
for %%# in (!_sid!) do (reg query HKU\%%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency %nul% && (
|
||||
reg delete HKU\%%#\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency /f
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\0ff1ce15-a989-479d-af46-f275c6370663" %nul% && (
|
||||
echo:
|
||||
echo Deleting - Registry key to prevent non-genuine banner
|
||||
echo Deleting - Registry keys to prevent non-genuine banner
|
||||
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform\0ff1ce15-a989-479d-af46-f275c6370663" /f
|
||||
)
|
||||
|
||||
@ -789,6 +827,9 @@ exit /b
|
||||
set ierror=
|
||||
set hasherror=
|
||||
|
||||
if %_hook%==sppc32.dll set offset=2564
|
||||
if %_hook%==sppc64.dll set offset=3076
|
||||
|
||||
del /s /q "%_hookPath%\sppcs.dll" %nul%
|
||||
del /s /q "%_hookPath%\sppc.dll" %nul%
|
||||
|
||||
@ -798,25 +839,23 @@ if exist "%_hookPath%\sppc.dll" set ierror=1
|
||||
mklink "%_hookPath%\sppcs.dll" "%_sppcPath%" %nul%
|
||||
if not %errorlevel%==0 set ierror=1
|
||||
|
||||
pushd "!_work!\BIN\"
|
||||
copy /y %_hook% "%_hookPath%\sppc.dll" %nul%
|
||||
popd
|
||||
if not exist "%_hookPath%\sppc.dll" call :oh_extractdll "%_hookPath%\sppc.dll" "%offset%"
|
||||
if not exist "%_hookPath%\sppc.dll" set ierror=1
|
||||
|
||||
echo:
|
||||
if not defined ierror (
|
||||
echo Symlinking System's sppc.dll To ["%_hookPath%\sppcs.dll"] [Successful]
|
||||
echo Copying Custom %_hook% To ["%_hookPath%\sppc.dll"] [Successful]
|
||||
echo Extracting Custom %_hook% To ["%_hookPath%\sppc.dll"] [Successful]
|
||||
) else (
|
||||
set error=1
|
||||
call :dk_color %Red% "Symlinking Systems sppc.dll [Failed]"
|
||||
call :dk_color %Red% "Copying Custom %_hook% [Failed]"
|
||||
call :dk_color %Red% "Extracting Custom %_hook% [Failed]"
|
||||
echo ["%_hookPath%\sppc.dll"]
|
||||
call :dk_color %Blue% "Close Office apps if they are running and try again."
|
||||
echo:
|
||||
call :dk_color %Blue% "Close ALL Office apps including Outlook and try again."
|
||||
call :dk_color %Blue% "If its still not resolved then restart system and try again."
|
||||
)
|
||||
|
||||
if not defined ierror call :oh_modify "%_hookPath%\sppc.dll"
|
||||
|
||||
if not defined ierror (
|
||||
if defined hasherror (
|
||||
set error=1
|
||||
@ -1076,7 +1115,7 @@ set showfix=1
|
||||
if defined safeboot_option (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[System is running in safe mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking Boot Mode " %Blue% "[Safe mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
@ -1090,7 +1129,7 @@ call :dk_color2 %Red% "Checking Audit Mode " %Blue% "[IMAGE_
|
||||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinPE" /v InstRoot %nul% && (
|
||||
set error=1
|
||||
set showfix=1
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[System is running in WinPE mode. Run in normal mode.]"
|
||||
call :dk_color2 %Red% "Checking WinPE " %Blue% "[WinPE mode found. Run in normal mode.]"
|
||||
)
|
||||
|
||||
|
||||
@ -1485,16 +1524,17 @@ exit /b
|
||||
:: This code is used to modify the timestamp value of sppc dll file in order to change checksums
|
||||
:: It's done to lower the potential false positive detection by antivirus's. On each install, it will install a unique sppc dll file
|
||||
|
||||
:oh_modify
|
||||
:oh_extractdll
|
||||
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':hexedit\:.*';& ([ScriptBlock]::Create($f[1])) '%1';" %nul2% | find /i "Error found" %nul1% && set hasherror=1
|
||||
set b=
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':%_hook%\:.*';$bytes = [Con%b%vert]::FromBas%b%e64String($f[1]); $PePath='%1'; $offset='%2'; $m=[io.file]::ReadAllText('!_batp!') -split ':hexedit\:.*';iex ($m[1]);" %nul2% | find /i "Error found" %nul1% && set hasherror=1
|
||||
exit /b
|
||||
|
||||
:hexedit:
|
||||
param (
|
||||
[Parameter()]
|
||||
[String]$PePath
|
||||
)
|
||||
# Use a MemoryStream to perform operations on the bytes
|
||||
$MemoryStream = New-Object System.IO.MemoryStream
|
||||
$Writer = New-Object System.IO.BinaryWriter($MemoryStream)
|
||||
$Writer.Write($bytes)
|
||||
|
||||
# Define dynamic assembly, module, and type
|
||||
$AssemblyBuilder = [AppDomain]::CurrentDomain.DefineDynamicAssembly(4, 1)
|
||||
@ -1507,20 +1547,15 @@ $TypeBuilder = $ModuleBuilder.DefineType(0)
|
||||
# Create the type
|
||||
$Imagehlp = $TypeBuilder.CreateType()
|
||||
|
||||
# File and offset information
|
||||
$PeFile = Get-ChildItem -Path $PePath
|
||||
# Offset information
|
||||
$timestampOffset = 136
|
||||
$exportTimestampOffset = 3076
|
||||
$exportTimestampOffset = $offset
|
||||
$checkSumOffset = 216
|
||||
|
||||
# Calculate timestamp
|
||||
$currentTimestamp = [DateTime]::UtcNow
|
||||
$unixTimestamp = [int]($currentTimestamp - (Get-Date -Year 1970 -Month 1 -Day 1 -Hour 0 -Minute 0 -Second 0)).TotalSeconds
|
||||
|
||||
# Open file
|
||||
$Stream = [System.IO.File]::Open($PeFile.FullName, [System.IO.FileMode]::Open, [System.IO.FileAccess]::Write, [System.IO.FileShare]::Read)
|
||||
$Writer = New-Object System.IO.BinaryWriter($Stream)
|
||||
|
||||
# Change timestamps
|
||||
$Writer.BaseStream.Position = $timestampOffset
|
||||
$Writer.Write($unixTimestamp)
|
||||
@ -1530,12 +1565,16 @@ $Writer.Write($unixTimestamp)
|
||||
|
||||
$Writer.Flush()
|
||||
|
||||
# Update hash
|
||||
# Write the current state of the MemoryStream to a temporary file
|
||||
$tempFilePath = [System.IO.Path]::Combine($env:windir, "Temp", [System.IO.Path]::GetRandomFileName())
|
||||
[System.IO.File]::WriteAllBytes($tempFilePath, $MemoryStream.ToArray())
|
||||
|
||||
# Update hash using the temporary file
|
||||
[int]$HeaderSum = 0
|
||||
[int]$CheckSum = 0
|
||||
[void]$Imagehlp::MapFileAndCheckSum($tempFilePath, [ref]$HeaderSum, [ref]$CheckSum)
|
||||
|
||||
[void]$Imagehlp::MapFileAndCheckSum($PeFile.FullName, [ref]$HeaderSum, [ref]$CheckSum)
|
||||
|
||||
# If the checksums don't match, update the checksum in the MemoryStream
|
||||
if ($HeaderSum -ne $CheckSum) {
|
||||
$Writer.BaseStream.Position = $checkSumOffset
|
||||
$Writer.Write($CheckSum)
|
||||
@ -1544,14 +1583,174 @@ if ($HeaderSum -ne $CheckSum) {
|
||||
Write-host Error found
|
||||
}
|
||||
|
||||
[void]$Imagehlp::MapFileAndCheckSum($PeFile.FullName, [ref]$HeaderSum, [ref]$CheckSum)
|
||||
# Delete the temporary file
|
||||
Remove-Item -Path $tempFilePath -Force
|
||||
|
||||
# Get the modified bytes
|
||||
$modifiedBytes = $MemoryStream.ToArray()
|
||||
|
||||
# Write the modified bytes to the final file
|
||||
[System.IO.File]::WriteAllBytes($PePath, $modifiedBytes)
|
||||
|
||||
[void]$Imagehlp::MapFileAndCheckSum($PePath, [ref]$HeaderSum, [ref]$CheckSum)
|
||||
if ($HeaderSum -ne $CheckSum) {
|
||||
Write-host Error found
|
||||
}
|
||||
|
||||
$Stream.Close()
|
||||
$MemoryStream.Close()
|
||||
:hexedit:
|
||||
|
||||
::========================================================================================================================================
|
||||
::
|
||||
:: This below blocks of text is encoded in base64 format
|
||||
:: The blocks in labels "sppc64.dll" and "sppc32.dll" contains below files
|
||||
::
|
||||
:: e6ac83560c19ec7eb868c50ea97ea0ed5632a397a9f43c17e24e6de4a694d118 *sppc32.dll
|
||||
:: c6df24deef2e83813dee9c81ddd9793a3d60c117a4e8e231b82e32b3192927e7 *sppc64.dll
|
||||
::
|
||||
:: The files are encoded in base64 to make MAS AIO version.
|
||||
::
|
||||
:: mass grave[.]dev/ohook
|
||||
:: Here you can find the files source code and info on how to rebuild the identical sppc.dll files
|
||||
::
|
||||
:: stackoverflow.com/a/35335273
|
||||
:: Here you can check how to extract sppc.dll files from base64
|
||||
::
|
||||
:: For any further question, feel free to contact us on mass grave[.]dev/contactus
|
||||
::
|
||||
::========================================================================================================================================
|
||||
|
||||
:sppc32.dll:
|
||||
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
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAF6UgABfAgBGwwEBIgBAAAQAAAAHAAAAODf//8IAAAAAAAAACQAAAAwAAAA
|
||||
1N///50AAAAAQQ4IhQJCDQVIhgODBAKPw0HGQcUMBAQoAAAAWAAAAEng//+qAAAAAEEOCIUCQg0FRocDhgSDBQKbw0HGQcdBxQwEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAADA3NBkAAAAAMZCAAABAAAAQwAAAEMAAAAoQAAANEEAAEBCAADPQgAA70IAAAVDAAApQwAAXUMAAKFDAADpQwAAF0QAADVEAABnRAAAnUQAAONEAAAtRQAAYUUAAJ9FAADTRQAADUYAADtGAABxRgAAr0YAAM9GAAD7RgAApRAAAFFHAABvRwAA
|
||||
n0cAANNHAAARSAAATUgAAG9IAAClSAAAzUgAAAVJAABBSQAAbUkAAKdJAAC7SQAA+0kAADlKAABPSgAAdUoAAJ1KAADTSgAAB0sAAD1LAABpSwAApUsAAONLAAANTAAAOUwAAIlMAADRTAAAEU0AAFlNAACjTQAA8U0AABtOAABHTgAAh04AALtOAADnTgAAK08AAFtP
|
||||
AAC1TwAA608AACdQAABdUAAA4kIAAP1CAAAaQwAARkMAAIJDAADIQwAAA0QAAClEAABRRAAAhUQAAMNEAAALRQAASkUAAINFAAC8RQAA80UAACdGAABZRgAAk0YAAMJGAADoRgAAGUcAADFHAABjRwAAikcAALxHAAD1RwAAMkgAAGFIAACNSAAAvEgAAOxIAAAmSQAA
|
||||
WkkAAI1JAAC0SQAA3kkAAB1KAABHSgAAZUoAAIxKAAC7SgAA8EoAACVLAABWSwAAiksAAMdLAAD7SwAAJkwAAGRMAACwTAAA9EwAADhNAACBTQAAzU0AAAlOAAA0TgAAak4AAKROAADUTgAADE8AAEZPAACLTwAA008AAAxQAABFUAAAeFAAAAAAAQACAAMABAAFAAYA
|
||||
BwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAc3BwYy5kbGwAU1BQQ1MuU0xDYWxsU2VydmVyAFNM
|
||||
Q2FsbFNlcnZlcgBTUFBDUy5TTENsb3NlAFNMQ2xvc2UAU1BQQ1MuU0xDb25zdW1lUmlnaHQAU0xDb25zdW1lUmlnaHQAU1BQQ1MuU0xEZXBvc2l0TWlncmF0aW9uQmxvYgBTTERlcG9zaXRNaWdyYXRpb25CbG9iAFNQUENTLlNMRGVwb3NpdE9mZmxpbmVDb25maXJt
|
||||
YXRpb25JZABTTERlcG9zaXRPZmZsaW5lQ29uZmlybWF0aW9uSWQAU1BQQ1MuU0xEZXBvc2l0T2ZmbGluZUNvbmZpcm1hdGlvbklkRXgAU0xEZXBvc2l0T2ZmbGluZUNvbmZpcm1hdGlvbklkRXgAU1BQQ1MuU0xEZXBvc2l0U3RvcmVUb2tlbgBTTERlcG9zaXRTdG9y
|
||||
ZVRva2VuAFNQUENTLlNMRmlyZUV2ZW50AFNMRmlyZUV2ZW50AFNQUENTLlNMR2F0aGVyTWlncmF0aW9uQmxvYgBTTEdhdGhlck1pZ3JhdGlvbkJsb2IAU1BQQ1MuU0xHYXRoZXJNaWdyYXRpb25CbG9iRXgAU0xHYXRoZXJNaWdyYXRpb25CbG9iRXgAU1BQQ1MuU0xH
|
||||
ZW5lcmF0ZU9mZmxpbmVJbnN0YWxsYXRpb25JZABTTEdlbmVyYXRlT2ZmbGluZUluc3RhbGxhdGlvbklkAFNQUENTLlNMR2VuZXJhdGVPZmZsaW5lSW5zdGFsbGF0aW9uSWRFeABTTEdlbmVyYXRlT2ZmbGluZUluc3RhbGxhdGlvbklkRXgAU1BQQ1MuU0xHZXRBY3Rp
|
||||
dmVMaWNlbnNlSW5mbwBTTEdldEFjdGl2ZUxpY2Vuc2VJbmZvAFNQUENTLlNMR2V0QXBwbGljYXRpb25JbmZvcm1hdGlvbgBTTEdldEFwcGxpY2F0aW9uSW5mb3JtYXRpb24AU1BQQ1MuU0xHZXRBcHBsaWNhdGlvblBvbGljeQBTTEdldEFwcGxpY2F0aW9uUG9saWN5
|
||||
AFNQUENTLlNMR2V0QXV0aGVudGljYXRpb25SZXN1bHQAU0xHZXRBdXRoZW50aWNhdGlvblJlc3VsdABTUFBDUy5TTEdldEVuY3J5cHRlZFBJREV4AFNMR2V0RW5jcnlwdGVkUElERXgAU1BQQ1MuU0xHZXRHZW51aW5lSW5mb3JtYXRpb24AU0xHZXRHZW51aW5lSW5m
|
||||
b3JtYXRpb24AU1BQQ1MuU0xHZXRJbnN0YWxsZWRQcm9kdWN0S2V5SWRzAFNMR2V0SW5zdGFsbGVkUHJvZHVjdEtleUlkcwBTUFBDUy5TTEdldExpY2Vuc2UAU0xHZXRMaWNlbnNlAFNQUENTLlNMR2V0TGljZW5zZUZpbGVJZABTTEdldExpY2Vuc2VGaWxlSWQAU1BQ
|
||||
Q1MuU0xHZXRMaWNlbnNlSW5mb3JtYXRpb24AU0xHZXRMaWNlbnNlSW5mb3JtYXRpb24AU0xHZXRMaWNlbnNpbmdTdGF0dXNJbmZvcm1hdGlvbgBTUFBDUy5TTEdldFBLZXlJZABTTEdldFBLZXlJZABTUFBDUy5TTEdldFBLZXlJbmZvcm1hdGlvbgBTTEdldFBLZXlJ
|
||||
bmZvcm1hdGlvbgBTUFBDUy5TTEdldFBvbGljeUluZm9ybWF0aW9uAFNMR2V0UG9saWN5SW5mb3JtYXRpb24AU1BQQ1MuU0xHZXRQb2xpY3lJbmZvcm1hdGlvbkRXT1JEAFNMR2V0UG9saWN5SW5mb3JtYXRpb25EV09SRABTUFBDUy5TTEdldFByb2R1Y3RTa3VJbmZv
|
||||
cm1hdGlvbgBTTEdldFByb2R1Y3RTa3VJbmZvcm1hdGlvbgBTUFBDUy5TTEdldFNMSURMaXN0AFNMR2V0U0xJRExpc3QAU1BQQ1MuU0xHZXRTZXJ2aWNlSW5mb3JtYXRpb24AU0xHZXRTZXJ2aWNlSW5mb3JtYXRpb24AU1BQQ1MuU0xJbnN0YWxsTGljZW5zZQBTTElu
|
||||
c3RhbGxMaWNlbnNlAFNQUENTLlNMSW5zdGFsbFByb29mT2ZQdXJjaGFzZQBTTEluc3RhbGxQcm9vZk9mUHVyY2hhc2UAU1BQQ1MuU0xJbnN0YWxsUHJvb2ZPZlB1cmNoYXNlRXgAU0xJbnN0YWxsUHJvb2ZPZlB1cmNoYXNlRXgAU1BQQ1MuU0xJc0dlbnVpbmVMb2Nh
|
||||
bEV4AFNMSXNHZW51aW5lTG9jYWxFeABTUFBDUy5TTExvYWRBcHBsaWNhdGlvblBvbGljaWVzAFNMTG9hZEFwcGxpY2F0aW9uUG9saWNpZXMAU1BQQ1MuU0xPcGVuAFNMT3BlbgBTUFBDUy5TTFBlcnNpc3RBcHBsaWNhdGlvblBvbGljaWVzAFNMUGVyc2lzdEFwcGxp
|
||||
Y2F0aW9uUG9saWNpZXMAU1BQQ1MuU0xQZXJzaXN0UlRTUGF5bG9hZE92ZXJyaWRlAFNMUGVyc2lzdFJUU1BheWxvYWRPdmVycmlkZQBTUFBDUy5TTFJlQXJtAFNMUmVBcm0AU1BQQ1MuU0xSZWdpc3RlckV2ZW50AFNMUmVnaXN0ZXJFdmVudABTUFBDUy5TTFJlZ2lz
|
||||
dGVyUGx1Z2luAFNMUmVnaXN0ZXJQbHVnaW4AU1BQQ1MuU0xTZXRBdXRoZW50aWNhdGlvbkRhdGEAU0xTZXRBdXRoZW50aWNhdGlvbkRhdGEAU1BQQ1MuU0xTZXRDdXJyZW50UHJvZHVjdEtleQBTTFNldEN1cnJlbnRQcm9kdWN0S2V5AFNQUENTLlNMU2V0R2VudWlu
|
||||
ZUluZm9ybWF0aW9uAFNMU2V0R2VudWluZUluZm9ybWF0aW9uAFNQUENTLlNMVW5pbnN0YWxsTGljZW5zZQBTTFVuaW5zdGFsbExpY2Vuc2UAU1BQQ1MuU0xVbmluc3RhbGxQcm9vZk9mUHVyY2hhc2UAU0xVbmluc3RhbGxQcm9vZk9mUHVyY2hhc2UAU1BQQ1MuU0xV
|
||||
bmxvYWRBcHBsaWNhdGlvblBvbGljaWVzAFNMVW5sb2FkQXBwbGljYXRpb25Qb2xpY2llcwBTUFBDUy5TTFVucmVnaXN0ZXJFdmVudABTTFVucmVnaXN0ZXJFdmVudABTUFBDUy5TTFVucmVnaXN0ZXJQbHVnaW4AU0xVbnJlZ2lzdGVyUGx1Z2luAFNQUENTLlNMcEF1
|
||||
dGhlbnRpY2F0ZUdlbnVpbmVUaWNrZXRSZXNwb25zZQBTTHBBdXRoZW50aWNhdGVHZW51aW5lVGlja2V0UmVzcG9uc2UAU1BQQ1MuU0xwQmVnaW5HZW51aW5lVGlja2V0VHJhbnNhY3Rpb24AU0xwQmVnaW5HZW51aW5lVGlja2V0VHJhbnNhY3Rpb24AU1BQQ1MuU0xw
|
||||
Q2xlYXJBY3RpdmF0aW9uSW5Qcm9ncmVzcwBTTHBDbGVhckFjdGl2YXRpb25JblByb2dyZXNzAFNQUENTLlNMcERlcG9zaXREb3dubGV2ZWxHZW51aW5lVGlja2V0AFNMcERlcG9zaXREb3dubGV2ZWxHZW51aW5lVGlja2V0AFNQUENTLlNMcERlcG9zaXRUb2tlbkFj
|
||||
dGl2YXRpb25SZXNwb25zZQBTTHBEZXBvc2l0VG9rZW5BY3RpdmF0aW9uUmVzcG9uc2UAU1BQQ1MuU0xwR2VuZXJhdGVUb2tlbkFjdGl2YXRpb25DaGFsbGVuZ2UAU0xwR2VuZXJhdGVUb2tlbkFjdGl2YXRpb25DaGFsbGVuZ2UAU1BQQ1MuU0xwR2V0R2VudWluZUJs
|
||||
b2IAU0xwR2V0R2VudWluZUJsb2IAU1BQQ1MuU0xwR2V0R2VudWluZUxvY2FsAFNMcEdldEdlbnVpbmVMb2NhbABTUFBDUy5TTHBHZXRMaWNlbnNlQWNxdWlzaXRpb25JbmZvAFNMcEdldExpY2Vuc2VBY3F1aXNpdGlvbkluZm8AU1BQQ1MuU0xwR2V0TVNQaWRJbmZv
|
||||
cm1hdGlvbgBTTHBHZXRNU1BpZEluZm9ybWF0aW9uAFNQUENTLlNMcEdldE1hY2hpbmVVR1VJRABTTHBHZXRNYWNoaW5lVUdVSUQAU1BQQ1MuU0xwR2V0VG9rZW5BY3RpdmF0aW9uR3JhbnRJbmZvAFNMcEdldFRva2VuQWN0aXZhdGlvbkdyYW50SW5mbwBTUFBDUy5T
|
||||
THBJQUFjdGl2YXRlUHJvZHVjdABTTHBJQUFjdGl2YXRlUHJvZHVjdABTUFBDUy5TTHBJc0N1cnJlbnRJbnN0YWxsZWRQcm9kdWN0S2V5RGVmYXVsdEtleQBTTHBJc0N1cnJlbnRJbnN0YWxsZWRQcm9kdWN0S2V5RGVmYXVsdEtleQBTUFBDUy5TTHBQcm9jZXNzVk1Q
|
||||
aXBlTWVzc2FnZQBTTHBQcm9jZXNzVk1QaXBlTWVzc2FnZQBTUFBDUy5TTHBTZXRBY3RpdmF0aW9uSW5Qcm9ncmVzcwBTTHBTZXRBY3RpdmF0aW9uSW5Qcm9ncmVzcwBTUFBDUy5TTHBUcmlnZ2VyU2VydmljZVdvcmtlcgBTTHBUcmlnZ2VyU2VydmljZVdvcmtlcgBT
|
||||
UFBDUy5TTHBWTEFjdGl2YXRlUHJvZHVjdABTTHBWTEFjdGl2YXRlUHJvZHVjdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBgAAAAAAAAAAAAAOhgAABsYAAAXGAAAAAAAAAAAAAA
|
||||
+GAAAHhgAABkYAAAAAAAAAAAAAAMYQAAgGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiGAAAKpgAAAAAAAAyGAAAAAAAADUYAAAAAAAAIhgAACqYAAAAAAAAMhgAAAAAAAA1GAAAAAAAAACAFNMR2V0TGljZW5zaW5nU3RhdHVzSW5mb3JtYXRpb24AAQBTTEdldFByb2R1
|
||||
Y3RTa3VJbmZvcm1hdGlvbgAA3QNMb2NhbEZyZWUARwFTdHJTdHJOSVcAAGAAAABgAABzcHBjcy5kbGwAAAAUYAAAS0VSTkVMMzIuZGxsAAAAAChgAABTSExXQVBJLmRsbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABABAAAAAYAACAAAAAAAAAAAAAAAAAAAABAAEAAAAwAACAAAAAAAAAAAAAAAAAAAABAAkEAABIAAAAWHAAABwDAAAAAAAAAAAAABwDNAAAAFYAUwBfAFYARQBSAFMASQBPAE4AXwBJAE4A
|
||||
RgBPAAAAAAC9BO/+AAABAAMAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAQABAACAAAAAAAAAAAAAAAAAAAAfAIAAAEAUwB0AHIAaQBuAGcARgBpAGwAZQBJAG4AZgBvAAAAWAIAAAEAMAA0ADAAOQAwADQARQA0AAAAegAtAAEAQwBvAG0AcABhAG4AeQBOAGEAbQBlAAAA
|
||||
AABBAG4AbwBtAGEAbABvAHUAcwAgAFMAbwBmAHQAdwBhAHIAZQAgAEQAZQB0AGUAcgBpAG8AcgBhAHQAaQBvAG4AIABDAG8AcgBwAG8AcgBhAHQAaQBvAG4AAAAAAD4ACwABAEYAaQBsAGUARABlAHMAYwByAGkAcAB0AGkAbwBuAAAAAABvAGgAbwBvAGsAIABTAFAA
|
||||
UABDAAAAAAAwAAgAAQBGAGkAbABlAFYAZQByAHMAaQBvAG4AAAAAADAALgAzAC4AMAAuADAAAAAqAAUAAQBJAG4AdABlAHIAbgBhAGwATgBhAG0AZQAAAHMAcABwAGMAAAAAAIwANAABAEwAZQBnAGEAbABDAG8AcAB5AHIAaQBnAGgAdAAAAKkAIAAyADAAMgAzACAA
|
||||
QQBuAG8AbQBhAGwAbwB1AHMAIABTAG8AZgB0AHcAYQByAGUAIABEAGUAdABlAHIAaQBvAHIAYQB0AGkAbwBuACAAQwBvAHIAcABvAHIAYQB0AGkAbwBuAAAAOgAJAAEATwByAGkAZwBpAG4AYQBsAEYAaQBsAGUAbgBhAG0AZQAAAHMAcABwAGMALgBkAGwAbAAAAAAA
|
||||
LAAGAAEAUAByAG8AZAB1AGMAdABOAGEAbQBlAAAAAABvAGgAbwBvAGsAAAA0AAgAAQBQAHIAbwBkAHUAYwB0AFYAZQByAHMAaQBvAG4AAAAwAC4AMwAuADAALgAwAAAARAAAAAEAVgBhAHIARgBpAGwAZQBJAG4AZgBvAAAAAAAkAAQAAABUAHIAYQBuAHMAbABhAHQA
|
||||
aQBvAG4AAAAAAAkE5AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAQAAAUAAAAOzBQMHEwfjBSMVoxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
:sppc32.dll:
|
||||
|
||||
:========================================================================================================================================
|
||||
|
||||
:sppc64.dll:
|
||||
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
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABhAAAABAAAAGEAAAjhAAAARAAACOEAAAGREAABBAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAEAAAABBwMAB4IDMALAAAABDAcADGIIMAdgBnAFUATAAtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDc0GQAAAAAxlIAAAEAAABDAAAAQwAAAChQAAA0UQAAQFIAAM9SAADvUgAABVMAAClTAABdUwAAoVMAAOlTAAAXVAAANVQAAGdU
|
||||
AACdVAAA41QAAC1VAABhVQAAn1UAANNVAAANVgAAO1YAAHFWAACvVgAAz1YAAPtWAACOEAAAUVcAAG9XAACfVwAA01cAABFYAABNWAAAb1gAAKVYAADNWAAABVkAAEFZAABtWQAAp1kAALtZAAD7WQAAOVoAAE9aAAB1WgAAnVoAANNaAAAHWwAAPVsAAGlbAAClWwAA
|
||||
41sAAA1cAAA5XAAAiVwAANFcAAARXQAAWV0AAKNdAADxXQAAG14AAEdeAACHXgAAu14AAOdeAAArXwAAW18AALVfAADrXwAAJ2AAAF1gAADiUgAA/VIAABpTAABGUwAAglMAAMhTAAADVAAAKVQAAFFUAACFVAAAw1QAAAtVAABKVQAAg1UAALxVAADzVQAAJ1YAAFlW
|
||||
AACTVgAAwlYAAOhWAAAZVwAAMVcAAGNXAACKVwAAvFcAAPVXAAAyWAAAYVgAAI1YAAC8WAAA7FgAACZZAABaWQAAjVkAALRZAADeWQAAHVoAAEdaAABlWgAAjFoAALtaAADwWgAAJVsAAFZbAACKWwAAx1sAAPtbAAAmXAAAZFwAALBcAAD0XAAAOF0AAIFdAADNXQAA
|
||||
CV4AADReAABqXgAApF4AANReAAAMXwAARl8AAItfAADTXwAADGAAAEVgAAB4YAAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIA
|
||||
MwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBzcHBjLmRsbABTUFBDUy5TTENhbGxTZXJ2ZXIAU0xDYWxsU2VydmVyAFNQUENTLlNMQ2xvc2UAU0xDbG9zZQBTUFBDUy5TTENvbnN1bWVSaWdodABTTENvbnN1bWVSaWdodABTUFBDUy5TTERlcG9zaXRNaWdy
|
||||
YXRpb25CbG9iAFNMRGVwb3NpdE1pZ3JhdGlvbkJsb2IAU1BQQ1MuU0xEZXBvc2l0T2ZmbGluZUNvbmZpcm1hdGlvbklkAFNMRGVwb3NpdE9mZmxpbmVDb25maXJtYXRpb25JZABTUFBDUy5TTERlcG9zaXRPZmZsaW5lQ29uZmlybWF0aW9uSWRFeABTTERlcG9zaXRP
|
||||
ZmZsaW5lQ29uZmlybWF0aW9uSWRFeABTUFBDUy5TTERlcG9zaXRTdG9yZVRva2VuAFNMRGVwb3NpdFN0b3JlVG9rZW4AU1BQQ1MuU0xGaXJlRXZlbnQAU0xGaXJlRXZlbnQAU1BQQ1MuU0xHYXRoZXJNaWdyYXRpb25CbG9iAFNMR2F0aGVyTWlncmF0aW9uQmxvYgBT
|
||||
UFBDUy5TTEdhdGhlck1pZ3JhdGlvbkJsb2JFeABTTEdhdGhlck1pZ3JhdGlvbkJsb2JFeABTUFBDUy5TTEdlbmVyYXRlT2ZmbGluZUluc3RhbGxhdGlvbklkAFNMR2VuZXJhdGVPZmZsaW5lSW5zdGFsbGF0aW9uSWQAU1BQQ1MuU0xHZW5lcmF0ZU9mZmxpbmVJbnN0
|
||||
YWxsYXRpb25JZEV4AFNMR2VuZXJhdGVPZmZsaW5lSW5zdGFsbGF0aW9uSWRFeABTUFBDUy5TTEdldEFjdGl2ZUxpY2Vuc2VJbmZvAFNMR2V0QWN0aXZlTGljZW5zZUluZm8AU1BQQ1MuU0xHZXRBcHBsaWNhdGlvbkluZm9ybWF0aW9uAFNMR2V0QXBwbGljYXRpb25J
|
||||
bmZvcm1hdGlvbgBTUFBDUy5TTEdldEFwcGxpY2F0aW9uUG9saWN5AFNMR2V0QXBwbGljYXRpb25Qb2xpY3kAU1BQQ1MuU0xHZXRBdXRoZW50aWNhdGlvblJlc3VsdABTTEdldEF1dGhlbnRpY2F0aW9uUmVzdWx0AFNQUENTLlNMR2V0RW5jcnlwdGVkUElERXgAU0xH
|
||||
ZXRFbmNyeXB0ZWRQSURFeABTUFBDUy5TTEdldEdlbnVpbmVJbmZvcm1hdGlvbgBTTEdldEdlbnVpbmVJbmZvcm1hdGlvbgBTUFBDUy5TTEdldEluc3RhbGxlZFByb2R1Y3RLZXlJZHMAU0xHZXRJbnN0YWxsZWRQcm9kdWN0S2V5SWRzAFNQUENTLlNMR2V0TGljZW5z
|
||||
ZQBTTEdldExpY2Vuc2UAU1BQQ1MuU0xHZXRMaWNlbnNlRmlsZUlkAFNMR2V0TGljZW5zZUZpbGVJZABTUFBDUy5TTEdldExpY2Vuc2VJbmZvcm1hdGlvbgBTTEdldExpY2Vuc2VJbmZvcm1hdGlvbgBTTEdldExpY2Vuc2luZ1N0YXR1c0luZm9ybWF0aW9uAFNQUENT
|
||||
LlNMR2V0UEtleUlkAFNMR2V0UEtleUlkAFNQUENTLlNMR2V0UEtleUluZm9ybWF0aW9uAFNMR2V0UEtleUluZm9ybWF0aW9uAFNQUENTLlNMR2V0UG9saWN5SW5mb3JtYXRpb24AU0xHZXRQb2xpY3lJbmZvcm1hdGlvbgBTUFBDUy5TTEdldFBvbGljeUluZm9ybWF0
|
||||
aW9uRFdPUkQAU0xHZXRQb2xpY3lJbmZvcm1hdGlvbkRXT1JEAFNQUENTLlNMR2V0UHJvZHVjdFNrdUluZm9ybWF0aW9uAFNMR2V0UHJvZHVjdFNrdUluZm9ybWF0aW9uAFNQUENTLlNMR2V0U0xJRExpc3QAU0xHZXRTTElETGlzdABTUFBDUy5TTEdldFNlcnZpY2VJ
|
||||
bmZvcm1hdGlvbgBTTEdldFNlcnZpY2VJbmZvcm1hdGlvbgBTUFBDUy5TTEluc3RhbGxMaWNlbnNlAFNMSW5zdGFsbExpY2Vuc2UAU1BQQ1MuU0xJbnN0YWxsUHJvb2ZPZlB1cmNoYXNlAFNMSW5zdGFsbFByb29mT2ZQdXJjaGFzZQBTUFBDUy5TTEluc3RhbGxQcm9v
|
||||
Zk9mUHVyY2hhc2VFeABTTEluc3RhbGxQcm9vZk9mUHVyY2hhc2VFeABTUFBDUy5TTElzR2VudWluZUxvY2FsRXgAU0xJc0dlbnVpbmVMb2NhbEV4AFNQUENTLlNMTG9hZEFwcGxpY2F0aW9uUG9saWNpZXMAU0xMb2FkQXBwbGljYXRpb25Qb2xpY2llcwBTUFBDUy5T
|
||||
TE9wZW4AU0xPcGVuAFNQUENTLlNMUGVyc2lzdEFwcGxpY2F0aW9uUG9saWNpZXMAU0xQZXJzaXN0QXBwbGljYXRpb25Qb2xpY2llcwBTUFBDUy5TTFBlcnNpc3RSVFNQYXlsb2FkT3ZlcnJpZGUAU0xQZXJzaXN0UlRTUGF5bG9hZE92ZXJyaWRlAFNQUENTLlNMUmVB
|
||||
cm0AU0xSZUFybQBTUFBDUy5TTFJlZ2lzdGVyRXZlbnQAU0xSZWdpc3RlckV2ZW50AFNQUENTLlNMUmVnaXN0ZXJQbHVnaW4AU0xSZWdpc3RlclBsdWdpbgBTUFBDUy5TTFNldEF1dGhlbnRpY2F0aW9uRGF0YQBTTFNldEF1dGhlbnRpY2F0aW9uRGF0YQBTUFBDUy5T
|
||||
TFNldEN1cnJlbnRQcm9kdWN0S2V5AFNMU2V0Q3VycmVudFByb2R1Y3RLZXkAU1BQQ1MuU0xTZXRHZW51aW5lSW5mb3JtYXRpb24AU0xTZXRHZW51aW5lSW5mb3JtYXRpb24AU1BQQ1MuU0xVbmluc3RhbGxMaWNlbnNlAFNMVW5pbnN0YWxsTGljZW5zZQBTUFBDUy5T
|
||||
TFVuaW5zdGFsbFByb29mT2ZQdXJjaGFzZQBTTFVuaW5zdGFsbFByb29mT2ZQdXJjaGFzZQBTUFBDUy5TTFVubG9hZEFwcGxpY2F0aW9uUG9saWNpZXMAU0xVbmxvYWRBcHBsaWNhdGlvblBvbGljaWVzAFNQUENTLlNMVW5yZWdpc3RlckV2ZW50AFNMVW5yZWdpc3Rl
|
||||
ckV2ZW50AFNQUENTLlNMVW5yZWdpc3RlclBsdWdpbgBTTFVucmVnaXN0ZXJQbHVnaW4AU1BQQ1MuU0xwQXV0aGVudGljYXRlR2VudWluZVRpY2tldFJlc3BvbnNlAFNMcEF1dGhlbnRpY2F0ZUdlbnVpbmVUaWNrZXRSZXNwb25zZQBTUFBDUy5TTHBCZWdpbkdlbnVp
|
||||
bmVUaWNrZXRUcmFuc2FjdGlvbgBTTHBCZWdpbkdlbnVpbmVUaWNrZXRUcmFuc2FjdGlvbgBTUFBDUy5TTHBDbGVhckFjdGl2YXRpb25JblByb2dyZXNzAFNMcENsZWFyQWN0aXZhdGlvbkluUHJvZ3Jlc3MAU1BQQ1MuU0xwRGVwb3NpdERvd25sZXZlbEdlbnVpbmVU
|
||||
aWNrZXQAU0xwRGVwb3NpdERvd25sZXZlbEdlbnVpbmVUaWNrZXQAU1BQQ1MuU0xwRGVwb3NpdFRva2VuQWN0aXZhdGlvblJlc3BvbnNlAFNMcERlcG9zaXRUb2tlbkFjdGl2YXRpb25SZXNwb25zZQBTUFBDUy5TTHBHZW5lcmF0ZVRva2VuQWN0aXZhdGlvbkNoYWxs
|
||||
ZW5nZQBTTHBHZW5lcmF0ZVRva2VuQWN0aXZhdGlvbkNoYWxsZW5nZQBTUFBDUy5TTHBHZXRHZW51aW5lQmxvYgBTTHBHZXRHZW51aW5lQmxvYgBTUFBDUy5TTHBHZXRHZW51aW5lTG9jYWwAU0xwR2V0R2VudWluZUxvY2FsAFNQUENTLlNMcEdldExpY2Vuc2VBY3F1
|
||||
aXNpdGlvbkluZm8AU0xwR2V0TGljZW5zZUFjcXVpc2l0aW9uSW5mbwBTUFBDUy5TTHBHZXRNU1BpZEluZm9ybWF0aW9uAFNMcEdldE1TUGlkSW5mb3JtYXRpb24AU1BQQ1MuU0xwR2V0TWFjaGluZVVHVUlEAFNMcEdldE1hY2hpbmVVR1VJRABTUFBDUy5TTHBHZXRU
|
||||
b2tlbkFjdGl2YXRpb25HcmFudEluZm8AU0xwR2V0VG9rZW5BY3RpdmF0aW9uR3JhbnRJbmZvAFNQUENTLlNMcElBQWN0aXZhdGVQcm9kdWN0AFNMcElBQWN0aXZhdGVQcm9kdWN0AFNQUENTLlNMcElzQ3VycmVudEluc3RhbGxlZFByb2R1Y3RLZXlEZWZhdWx0S2V5
|
||||
AFNMcElzQ3VycmVudEluc3RhbGxlZFByb2R1Y3RLZXlEZWZhdWx0S2V5AFNQUENTLlNMcFByb2Nlc3NWTVBpcGVNZXNzYWdlAFNMcFByb2Nlc3NWTVBpcGVNZXNzYWdlAFNQUENTLlNMcFNldEFjdGl2YXRpb25JblByb2dyZXNzAFNMcFNldEFjdGl2YXRpb25JblBy
|
||||
b2dyZXNzAFNQUENTLlNMcFRyaWdnZXJTZXJ2aWNlV29ya2VyAFNMcFRyaWdnZXJTZXJ2aWNlV29ya2VyAFNQUENTLlNMcFZMQWN0aXZhdGVQcm9kdWN0AFNMcFZMQWN0aXZhdGVQcm9kdWN0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUHAAAAAAAAAAAAAAIHEAAIhwAABocAAAAAAAAAAAAAAwcQAAoHAAAHhwAAAAAAAAAAAAAERxAACwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAcAAAAAAAAOJwAAAAAAAAAAAAAAAAAAAAcQAAAAAAAAAAAAAAAAAA
|
||||
DHEAAAAAAAAAAAAAAAAAAMBwAAAAAAAA4nAAAAAAAAAAAAAAAAAAAABxAAAAAAAAAAAAAAAAAAAMcQAAAAAAAAAAAAAAAAAAAgBTTEdldExpY2Vuc2luZ1N0YXR1c0luZm9ybWF0aW9uAAEAU0xHZXRQcm9kdWN0U2t1SW5mb3JtYXRpb24AAOgDTG9jYWxGcmVlAFEB
|
||||
U3RyU3RyTklXAABwAAAAcAAAc3BwY3MuZGxsAAAAFHAAAEtFUk5FTDMyLmRsbAAAAAAocAAAU0hMV0FQSS5kbGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEAAAABgAAIAAAAAAAAAAAAAAAAAAAAEAAQAAADAAAIAAAAAAAAAAAAAA
|
||||
AAAAAAEACQQAAEgAAABYgAAAHAMAAAAAAAAAAAAAHAM0AAAAVgBTAF8AVgBFAFIAUwBJAE8ATgBfAEkATgBGAE8AAAAAAL0E7/4AAAEAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAABAAEAAIAAAAAAAAAAAAAAAAAAAB8AgAAAQBTAHQAcgBpAG4AZwBGAGkAbABlAEkA
|
||||
bgBmAG8AAABYAgAAAQAwADQAMAA5ADAANABFADQAAAB6AC0AAQBDAG8AbQBwAGEAbgB5AE4AYQBtAGUAAAAAAEEAbgBvAG0AYQBsAG8AdQBzACAAUwBvAGYAdAB3AGEAcgBlACAARABlAHQAZQByAGkAbwByAGEAdABpAG8AbgAgAEMAbwByAHAAbwByAGEAdABpAG8A
|
||||
bgAAAAAAPgALAAEARgBpAGwAZQBEAGUAcwBjAHIAaQBwAHQAaQBvAG4AAAAAAG8AaABvAG8AawAgAFMAUABQAEMAAAAAADAACAABAEYAaQBsAGUAVgBlAHIAcwBpAG8AbgAAAAAAMAAuADMALgAwAC4AMAAAACoABQABAEkAbgB0AGUAcgBuAGEAbABOAGEAbQBlAAAA
|
||||
cwBwAHAAYwAAAAAAjAA0AAEATABlAGcAYQBsAEMAbwBwAHkAcgBpAGcAaAB0AAAAqQAgADIAMAAyADMAIABBAG4AbwBtAGEAbABvAHUAcwAgAFMAbwBmAHQAdwBhAHIAZQAgAEQAZQB0AGUAcgBpAG8AcgBhAHQAaQBvAG4AIABDAG8AcgBwAG8AcgBhAHQAaQBvAG4A
|
||||
AAA6AAkAAQBPAHIAaQBnAGkAbgBhAGwARgBpAGwAZQBuAGEAbQBlAAAAcwBwAHAAYwAuAGQAbABsAAAAAAAsAAYAAQBQAHIAbwBkAHUAYwB0AE4AYQBtAGUAAAAAAG8AaABvAG8AawAAADQACAABAFAAcgBvAGQAdQBjAHQAVgBlAHIAcwBpAG8AbgAAADAALgAzAC4A
|
||||
MAAuADAAAABEAAAAAQBWAGEAcgBGAGkAbABlAEkAbgBmAG8AAAAAACQABAAAAFQAcgBhAG4AcwBsAGEAdABpAG8AbgAAAAAACQTkBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
:sppc64.dll:
|
||||
|
||||
::========================================================================================================================================
|
||||
:: Leave empty line below
|
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -93,7 +94,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Online KMS Activation
|
||||
title Online KMS Activation %masver%
|
||||
|
||||
:: You are not supposed to edit anything below this.
|
||||
|
||||
@ -137,14 +138,18 @@ if /i "%%A"=="-el" (set _elev=1
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
set "nul1=1>nul"
|
||||
set "nul2=2>nul"
|
||||
set "nul6=2^>nul"
|
||||
set "nul=>nul 2>&1"
|
||||
|
||||
set psc=powershell.exe
|
||||
set winbuild=1
|
||||
for /f "tokens=6 delims=[]. " %%G in ('ver') do set winbuild=%%G
|
||||
|
||||
set _NCS=1
|
||||
if %winbuild% LSS 10586 set _NCS=0
|
||||
if %winbuild% GEQ 10586 reg query "HKCU\Console" /v ForceV2 2>nul | find /i "0x0" 1>nul && (set _NCS=0)
|
||||
if %winbuild% GEQ 10586 reg query "HKCU\Console" /v ForceV2 %nul2% | find /i "0x0" %nul1% && (set _NCS=0)
|
||||
|
||||
call :_colorprep
|
||||
set "_buf={$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=31;$B.Height=300;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
@ -180,14 +185,14 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
set "_Local=%LocalAppData%"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
echo "!_batf!" | find /i "!_ttemp!" 1>nul && (
|
||||
echo "!_batf!" | find /i "!_ttemp!" %nul1% && (
|
||||
if /i not "!_work!"=="!_ttemp!" (
|
||||
%nceline%
|
||||
echo Script is launched from the temp folder,
|
||||
@ -202,10 +207,10 @@ goto Done
|
||||
|
||||
:: Elevate script as admin and pass arguments and preventing loop
|
||||
|
||||
>nul fltmc || (
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%nceline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto Done
|
||||
)
|
||||
@ -218,8 +223,8 @@ goto Done
|
||||
if defined _unattended set quedit=1
|
||||
for %%# in (%_args%) do (if /i "%%#"=="-qedit" set quedit=1)
|
||||
|
||||
reg query HKCU\Console /v QuickEdit 2>nul | find /i "0x0" %nul% || if not defined quedit (
|
||||
reg add HKCU\Console /v QuickEdit /t REG_DWORD /d "0" /f %nul%
|
||||
reg query HKCU\Console /v QuickEdit %nul2% | find /i "0x0" %nul1% || if not defined quedit (
|
||||
reg add HKCU\Console /v QuickEdit /t REG_DWORD /d "0" /f %nul1%
|
||||
start cmd.exe /c ""!_batf!" %_args% -qedit"
|
||||
rem quickedit reset code is added at the starting of the script instead of here because it takes time to reflect in some cases
|
||||
exit /b
|
||||
@ -227,6 +232,35 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
if not defined _unattended (
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
)
|
||||
cls
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
if %~z0 GEQ 300000 (set "_exitmsg=Go back") else (set "_exitmsg=Exit")
|
||||
|
||||
:: Check not x86 Windows
|
||||
@ -274,7 +308,7 @@ if defined _unattended if not defined _unattendedact goto Done
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
set "_title=Online KMS Activation"
|
||||
set "_title=Online KMS Activation %masver%"
|
||||
set _gui=
|
||||
|
||||
:_KMS_Menu
|
||||
@ -483,7 +517,7 @@ mode con cols=98 lines=31
|
||||
%psc% "&%_buf%"
|
||||
title %_title%
|
||||
) else (
|
||||
title Online KMS Activation
|
||||
title Online KMS Activation %masver%
|
||||
)
|
||||
|
||||
if defined _gui if %_Debug%==1 mode con cols=98 lines=30
|
||||
@ -3277,7 +3311,7 @@ goto :eof
|
||||
|
||||
cls
|
||||
mode con: cols=91 lines=30
|
||||
title Online KMS Complete Uninstall
|
||||
title Online KMS Complete Uninstall %masver%
|
||||
|
||||
set "key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\taskcache\tasks"
|
||||
|
||||
@ -3388,7 +3422,7 @@ exit /b
|
||||
|
||||
cls
|
||||
mode con cols=91 lines=30
|
||||
title Install Activation Auto-Renewal
|
||||
title Install Activation Auto-Renewal %masver%
|
||||
|
||||
set error_=
|
||||
set "_dest=%ProgramFiles%\Activation-Renewal"
|
||||
@ -3417,7 +3451,7 @@ if exist "%_temp%\.*" rmdir /s /q "%_temp%\" %nul%
|
||||
|
||||
call :createInfo.txt
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split \":_extracttask\:.*`r`n\"; [io.file]::WriteAllText('%_dest%\Activation_task.cmd', '@REM Dummy ' + '%random%' + [Environment]::NewLine + $f[1].Trim(), [System.Text.Encoding]::ASCII);"
|
||||
title Install Activation Auto-Renewal
|
||||
title Install Activation Auto-Renewal %masver%
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -92,7 +93,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Change Windows Edition
|
||||
title Change Windows Edition %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -169,7 +170,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -193,7 +194,7 @@ goto ced_done
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%eline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto ced_done
|
||||
)
|
||||
@ -214,6 +215,32 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :dk_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
cls
|
||||
mode 98, 30
|
||||
|
||||
@ -370,7 +397,7 @@ echo "!_target!" | find /i " %%# " %nul1% || set "_target= !_target! %%# "
|
||||
|
||||
if defined _target (
|
||||
for %%# in (%_target%) do (
|
||||
echo %%# | findstr /i "CountrySpecific CloudEdition" %nul% || (set "_ntarget=!_ntarget! %%#")
|
||||
echo %%# | findstr /i "CountrySpecific CloudEdition ServerRdsh" %nul% || (set "_ntarget=!_ntarget! %%#")
|
||||
)
|
||||
)
|
||||
|
||||
@ -462,18 +489,31 @@ goto ced_done
|
||||
:: Changing from Core to Non-Core & Changing editions in Windows build older than 17134 requires "changepk /productkey" or DISM Api method and restart
|
||||
:: In other cases, editions can be changed instantly with "slmgr /ipk"
|
||||
|
||||
if %_dismapi%==1 (
|
||||
mode con cols=105 lines=40
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':checkrebootflag\:.*';iex ($f[1]);" | find /i "True" %nul% && (
|
||||
%eline%
|
||||
echo Pending Reboot flags found.
|
||||
echo:
|
||||
echo Restart the system and try again.
|
||||
goto ced_done
|
||||
)
|
||||
)
|
||||
|
||||
cls
|
||||
%line%
|
||||
echo:
|
||||
if defined dismnotworking call :dk_color %_Yellow% "DISM.exe is not responding."
|
||||
echo Changing the Current Edition [%osedition%] %winbuild% to [%targetedition%]
|
||||
echo:
|
||||
|
||||
if %_dismapi%==1 (
|
||||
call :dk_color %Blue% "Notes-"
|
||||
call :dk_color %Green% "Notes-"
|
||||
echo:
|
||||
echo - Save your work before continue, system will auto restart.
|
||||
echo:
|
||||
echo - You will need to activate with HWID option once the edition is changed.
|
||||
%line%
|
||||
echo:
|
||||
choice /C:21 /N /M "[1] Continue [2] %_exitmsg% : "
|
||||
if !errorlevel!==1 exit /b
|
||||
@ -505,7 +545,7 @@ echo Check this page for help. %mas%troubleshoot
|
||||
|
||||
if %_dismapi%==1 (
|
||||
echo:
|
||||
echo Applying the DISM API method with %_chan% Key %key%
|
||||
echo Applying the DISM API method with %_chan% Key %key%. Please wait...
|
||||
echo:
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':dismapi\:.*';& ([ScriptBlock]::Create($f[1])) %targetedition% %key%;"
|
||||
timeout /t 3 %nul1%
|
||||
@ -525,7 +565,16 @@ cls
|
||||
mode con cols=105 lines=32
|
||||
%psc% "&{$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=31;$B.Height=200;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':checkrebootflag\:.*';iex ($f[1]);" | find /i "True" %nul% && (
|
||||
%eline%
|
||||
echo Pending reboot flags found.
|
||||
echo:
|
||||
echo Restart the system and try again.
|
||||
goto ced_done
|
||||
)
|
||||
|
||||
echo:
|
||||
if defined dismnotworking call :dk_color %_Yellow% "Note - DISM.exe is not responding."
|
||||
echo Changing the Current Edition [%osedition%] %winbuild% to [%targetedition%]
|
||||
echo:
|
||||
call :dk_color %Blue% "Important - Save your work before continue, system will auto reboot."
|
||||
@ -574,8 +623,17 @@ goto ced_done
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
%psc% "$f=[io.file]::ReadAllText('!_batp!') -split ':checkrebootflag\:.*';iex ($f[1]);" | find /i "True" %nul% && (
|
||||
%eline%
|
||||
echo Pending reboot flags found.
|
||||
echo:
|
||||
echo Restart the system and try again.
|
||||
goto ced_done
|
||||
)
|
||||
|
||||
cls
|
||||
echo:
|
||||
if defined dismnotworking call :dk_color %_Yellow% "Note - DISM.exe is not responding."
|
||||
echo Changing the Current Edition [%osedition%] %winbuild% to [%targetedition%]
|
||||
echo:
|
||||
echo Applying the command with %_chan% Key
|
||||
@ -620,7 +678,11 @@ exit /b
|
||||
|
||||
if %_wmic% EQU 1 set "chkedi=for /f "tokens=2 delims==" %%a in ('"wmic path SoftwareLicensingProduct where (ApplicationID='55c92734-d682-4d71-983e-d6ec3f16059f') get LicenseFamily /VALUE" %nul6%')"
|
||||
if %_wmic% EQU 0 set "chkedi=for /f "tokens=2 delims==" %%a in ('%psc% "(([WMISEARCHER]'SELECT LicenseFamily FROM SoftwareLicensingProduct WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f''').Get()).LicenseFamily ^| %% {echo ('LicenseFamily='+$_)}" %nul6%')"
|
||||
%chkedi% do (call set "_wtarget= !_wtarget! %%a ")
|
||||
%chkedi% do (
|
||||
call if exist %Systemdrive%\Windows\System32\spp\tokens\skus\%%a (
|
||||
call set "_wtarget= !_wtarget! %%a "
|
||||
)
|
||||
)
|
||||
exit /b
|
||||
|
||||
:: Check wmic.exe
|
||||
@ -663,6 +725,29 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check pending reboot flags
|
||||
|
||||
:checkrebootflag:
|
||||
function Test-PendingReboot
|
||||
{
|
||||
if (Test-Path -Path "$env:windir\WinSxS\pending.xml") { return $true }
|
||||
if (Get-ChildItem "HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending" -EA Ignore) { return $true }
|
||||
if (Get-Item "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired" -EA Ignore) { return $true }
|
||||
try {
|
||||
$util = [wmiclass]"\\.\root\ccm\clientsdk:CCM_ClientUtilities"
|
||||
$status = $util.DetermineIfRebootPending()
|
||||
if(($status -ne $null) -and $status.RebootPending){
|
||||
return $true
|
||||
}
|
||||
}catch{}
|
||||
|
||||
return $false
|
||||
}
|
||||
Test-PendingReboot
|
||||
:checkrebootflag:
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Get Product Key from pkeyhelper.dll for future new editions
|
||||
:: It works on Windows 10 1803 (17134) and later builds.
|
||||
|
||||
|
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -87,7 +88,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Extract $OEM$ Folder
|
||||
title Extract $OEM$ Folder %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -161,7 +162,7 @@ set "_batf=%~f0"
|
||||
set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -185,7 +186,7 @@ goto done2
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%eline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto done2
|
||||
)
|
||||
@ -206,6 +207,33 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :ex_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
cls
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
setlocal DisableDelayedExpansion
|
||||
|
||||
:: Check desktop location
|
||||
@ -240,9 +268,7 @@ goto done2
|
||||
set HWID_Activation.cmd=Activators\HWID_Activation.cmd
|
||||
set KMS38_Activation.cmd=Activators\KMS38_Activation.cmd
|
||||
set Online_KMS_Activation.cmd=Activators\Online_KMS_Activation.cmd
|
||||
set Ohook_Activation.cmd=Activators\Ohook_Activation\Ohook_Activation.cmd
|
||||
set sppc32.dll=Activators\Ohook_Activation\BIN\sppc32.dll
|
||||
set sppc64.dll=Activators\Ohook_Activation\BIN\sppc64.dll
|
||||
set Ohook_Activation_AIO.cmd=Activators\Ohook_Activation_AIO.cmd
|
||||
pushd "!_work!"
|
||||
|
||||
set _nofile=
|
||||
@ -250,9 +276,7 @@ for %%# in (
|
||||
%HWID_Activation.cmd%
|
||||
%KMS38_Activation.cmd%
|
||||
%Online_KMS_Activation.cmd%
|
||||
%Ohook_Activation.cmd%
|
||||
%sppc32.dll%
|
||||
%sppc64.dll%
|
||||
%Ohook_Activation_AIO.cmd%
|
||||
) do (
|
||||
if not exist "%%#" set _nofile=1
|
||||
)
|
||||
@ -336,7 +360,7 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0HWID_Activation.cmd" /HWID
|
||||
call "%~dp0HWID_Activation.cmd" /HWID
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -347,18 +371,14 @@ cd \
|
||||
:ohook
|
||||
|
||||
cls
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts\BIN"
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
||||
pushd "!_work!"
|
||||
copy /y /b "%Ohook_Activation.cmd%" "!_dir!\Ohook_Activation.cmd" %nul%
|
||||
copy /y /b "%sppc32.dll%" "!_dir!\BIN\sppc32.dll" %nul%
|
||||
copy /y /b "%sppc64.dll%" "!_dir!\BIN\sppc64.dll" %nul%
|
||||
copy /y /b %Ohook_Activation_AIO.cmd% "!_dir!\Ohook_Activation_AIO.cmd" %nul%
|
||||
popd
|
||||
call :export ohook_setup
|
||||
|
||||
set _error=
|
||||
if not exist "!_dir!\Ohook_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc32.dll" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc64.dll" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation_AIO.cmd" set _error=1
|
||||
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
||||
if defined _error goto errorfound
|
||||
|
||||
@ -370,7 +390,7 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0Ohook_Activation.cmd" /Ohook
|
||||
call "%~dp0Ohook_Activation_AIO.cmd" /Ohook
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -400,7 +420,7 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0KMS38_Activation.cmd" /KMS38
|
||||
call "%~dp0KMS38_Activation.cmd" /KMS38
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -430,7 +450,7 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-WindowsOffice
|
||||
call "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-WindowsOffice
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -441,20 +461,16 @@ cd \
|
||||
:hwid_ohook
|
||||
|
||||
cls
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts\BIN"
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
||||
pushd "!_work!"
|
||||
copy /y /b "%HWID_Activation.cmd%" "!_dir!\HWID_Activation.cmd" %nul%
|
||||
copy /y /b "%Ohook_Activation.cmd%" "!_dir!\Ohook_Activation.cmd" %nul%
|
||||
copy /y /b "%sppc32.dll%" "!_dir!\BIN\sppc32.dll" %nul%
|
||||
copy /y /b "%sppc64.dll%" "!_dir!\BIN\sppc64.dll" %nul%
|
||||
copy /y /b "%Ohook_Activation_AIO.cmd%" "!_dir!\Ohook_Activation_AIO.cmd" %nul%
|
||||
popd
|
||||
call :export hwid_ohook_setup
|
||||
|
||||
set _error=
|
||||
if not exist "!_dir!\HWID_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc32.dll" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc64.dll" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation_AIO.cmd" set _error=1
|
||||
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
||||
if defined _error goto errorfound
|
||||
|
||||
@ -466,9 +482,13 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0HWID_Activation.cmd" /HWID
|
||||
setlocal
|
||||
call "%~dp0HWID_Activation.cmd" /HWID
|
||||
endlocal
|
||||
|
||||
start /b /wait cmd /c "%~dp0Ohook_Activation.cmd" /Ohook
|
||||
setlocal
|
||||
call "%~dp0Ohook_Activation_AIO.cmd" /Ohook
|
||||
endlocal
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -500,9 +520,13 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0HWID_Activation.cmd" /HWID
|
||||
setlocal
|
||||
call "%~dp0HWID_Activation.cmd" /HWID
|
||||
endlocal
|
||||
|
||||
start /b /wait cmd /c "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-Office
|
||||
setlocal
|
||||
call "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-Office
|
||||
endlocal
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -513,20 +537,16 @@ cd \
|
||||
:kms38_ohook
|
||||
|
||||
cls
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts\BIN"
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
||||
pushd "!_work!"
|
||||
copy /y /b "%KMS38_Activation.cmd%" "!_dir!\KMS38_Activation.cmd" %nul%
|
||||
copy /y /b "%Ohook_Activation.cmd%" "!_dir!\Ohook_Activation.cmd" %nul%
|
||||
copy /y /b "%sppc32.dll%" "!_dir!\BIN\sppc32.dll" %nul%
|
||||
copy /y /b "%sppc64.dll%" "!_dir!\BIN\sppc64.dll" %nul%
|
||||
copy /y /b "%Ohook_Activation_AIO.cmd%" "!_dir!\Ohook_Activation_AIO.cmd" %nul%
|
||||
popd
|
||||
call :export kms38_ohook_setup
|
||||
|
||||
set _error=
|
||||
if not exist "!_dir!\KMS38_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc32.dll" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc64.dll" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation_AIO.cmd" set _error=1
|
||||
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
||||
if defined _error goto errorfound
|
||||
|
||||
@ -538,9 +558,13 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0KMS38_Activation.cmd" /KMS38
|
||||
setlocal
|
||||
call "%~dp0KMS38_Activation.cmd" /KMS38
|
||||
endlocal
|
||||
|
||||
start /b /wait cmd /c "%~dp0Ohook_Activation.cmd" /Ohook
|
||||
setlocal
|
||||
call "%~dp0Ohook_Activation_AIO.cmd" /Ohook
|
||||
endlocal
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -572,9 +596,13 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0KMS38_Activation.cmd" /KMS38
|
||||
setlocal
|
||||
call "%~dp0KMS38_Activation.cmd" /KMS38
|
||||
endlocal
|
||||
|
||||
start /b /wait cmd /c "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-Office
|
||||
setlocal
|
||||
call "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-Office
|
||||
endlocal
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
@ -585,20 +613,16 @@ cd \
|
||||
:kms_ohook
|
||||
|
||||
cls
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts\BIN"
|
||||
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
||||
pushd "!_work!"
|
||||
copy /y /b "%Online_KMS_Activation.cmd%" "!_dir!\Online_KMS_Activation.cmd" %nul%
|
||||
copy /y /b "%Ohook_Activation.cmd%" "!_dir!\Ohook_Activation.cmd" %nul%
|
||||
copy /y /b "%sppc32.dll%" "!_dir!\BIN\sppc32.dll" %nul%
|
||||
copy /y /b "%sppc64.dll%" "!_dir!\BIN\sppc64.dll" %nul%
|
||||
copy /y /b "%Ohook_Activation_AIO.cmd%" "!_dir!\Ohook_Activation_AIO.cmd" %nul%
|
||||
popd
|
||||
call :export kms_ohook_setup
|
||||
|
||||
set _error=
|
||||
if not exist "!_dir!\Online_KMS_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation.cmd" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc32.dll" set _error=1
|
||||
if not exist "!_dir!\BIN\sppc64.dll" set _error=1
|
||||
if not exist "!_dir!\Ohook_Activation_AIO.cmd" set _error=1
|
||||
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
||||
if defined _error goto errorfound
|
||||
|
||||
@ -610,9 +634,13 @@ goto done
|
||||
|
||||
fltmc >nul || exit /b
|
||||
|
||||
start /b /wait cmd /c "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-Windows
|
||||
setlocal
|
||||
call "%~dp0Online_KMS_Activation.cmd" /KMS-ActAndRenewalTask /KMS-Windows
|
||||
endlocal
|
||||
|
||||
start /b /wait cmd /c "%~dp0Ohook_Activation.cmd" /Ohook
|
||||
setlocal
|
||||
call "%~dp0Ohook_Activation_AIO.cmd" /Ohook
|
||||
endlocal
|
||||
|
||||
cd \
|
||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||
|
@ -1,3 +1,4 @@
|
||||
@set masver=2.4
|
||||
@setlocal DisableDelayedExpansion
|
||||
@echo off
|
||||
|
||||
@ -87,7 +88,7 @@ popd
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Troubleshoot
|
||||
title Troubleshoot %masver%
|
||||
|
||||
set _args=
|
||||
set _elev=
|
||||
@ -147,7 +148,7 @@ set "_batp=%_batf:'=''%"
|
||||
|
||||
set _PSarg="""%~f0""" -el %_args%
|
||||
|
||||
set "_ttemp=%temp%"
|
||||
set "_ttemp=%userprofile%\AppData\Local\Temp"
|
||||
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
@ -171,7 +172,7 @@ goto at_done
|
||||
%nul1% fltmc || (
|
||||
if not defined _elev %psc% "start cmd.exe -arg '/c \"!_PSarg:'=''!\"' -verb runas" && exit /b
|
||||
%nceline%
|
||||
echo This script require admin privileges.
|
||||
echo This script requires admin privileges.
|
||||
echo To do so, right click on this script and select 'Run as administrator'.
|
||||
goto at_done
|
||||
)
|
||||
@ -192,6 +193,33 @@ exit /b
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Check for updates
|
||||
|
||||
set -=
|
||||
set old=
|
||||
|
||||
for /f "delims=[] tokens=2" %%# in ('ping -4 -n 1 updatecheck.mass%-%grave.dev') do (
|
||||
if not [%%#]==[] (echo "%%#" | find "127.69" %nul1% && (echo "%%#" | find "127.69.%masver%" %nul1% || set old=1))
|
||||
)
|
||||
|
||||
if defined old (
|
||||
echo ________________________________________________
|
||||
%eline%
|
||||
echo You are running outdated version MAS %masver%
|
||||
echo ________________________________________________
|
||||
echo:
|
||||
echo [1] Download Latest MAS
|
||||
echo [0] Continue Anyway
|
||||
echo:
|
||||
call :_color %_Green% "Enter a menu option in the Keyboard [1,0] :"
|
||||
choice /C:10 /N
|
||||
if !errorlevel!==2 rem
|
||||
if !errorlevel!==1 (start ht%-%tps://github.com/mass%-%gravel/Microsoft-Acti%-%vation-Scripts & start %mas% & exit /b)
|
||||
)
|
||||
cls
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
setlocal DisableDelayedExpansion
|
||||
|
||||
:: Check desktop location
|
||||
@ -214,7 +242,7 @@ setlocal EnableDelayedExpansion
|
||||
|
||||
cls
|
||||
color 07
|
||||
title Troubleshoot
|
||||
title Troubleshoot %masver%
|
||||
mode con cols=77 lines=30
|
||||
|
||||
echo:
|
||||
@ -375,7 +403,7 @@ goto :at_back
|
||||
:retokens
|
||||
|
||||
cls
|
||||
mode con cols=115 lines=32
|
||||
mode con cols=125 lines=32
|
||||
%psc% "&{$W=$Host.UI.RawUI.WindowSize;$B=$Host.UI.RawUI.BufferSize;$W.Height=31;$B.Height=200;$Host.UI.RawUI.WindowSize=$W;$Host.UI.RawUI.BufferSize=$B;}"
|
||||
title Fix Licensing ^(ClipSVC ^+ Office vNext ^+ SPP ^+ OSPP^)
|
||||
|
||||
@ -388,6 +416,8 @@ echo - It helps in troubleshooting activation issues.
|
||||
echo:
|
||||
echo - This option will,
|
||||
echo - Deactivate Windows and Office, you may need to reactivate
|
||||
echo If Windows is activated with motherboard / OEM / Digital license then don't worry
|
||||
echo:
|
||||
echo - Clear ClipSVC, Office vNext, SPP and OSPP licenses
|
||||
echo - Fix SPP permissions of tokens folder and registries
|
||||
echo - Trigger the repair option for Office.
|
||||
@ -508,7 +538,8 @@ for %%# in (wlidsvc LicenseManager) do (net stop %%# /y %nul% & net start %%# /y
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
:: Clear Office vNext License
|
||||
:: Find remnants of Office vNext license block and remove it because it stops non vNext licenses from appearing
|
||||
:: https://learn.microsoft.com/en-us/office/troubleshoot/activation/reset-office-365-proplus-activation-state
|
||||
|
||||
:cleanvnext
|
||||
|
||||
@ -547,21 +578,28 @@ echo Deleted Folder - !_Local!\Microsoft\Office\Licenses\
|
||||
echo Not Found - !_Local!\Microsoft\Office\Licenses\
|
||||
)
|
||||
|
||||
|
||||
echo:
|
||||
for %%# in (
|
||||
HKCU\Software\Microsoft\Office\16.0\Common\Licensing
|
||||
HKCU\Software\Microsoft\Office\16.0\Registration
|
||||
for /f "tokens=* delims=" %%a in ('%psc% "$userSIDs = Get-WmiObject -Class Win32_UserAccount | ForEach-Object {write-host $_.SID}" %nul6%') do (if defined _sid (set "_sid=!_sid! HKU\%%a") else (set "_sid=HKU\%%a"))
|
||||
|
||||
set regfound=
|
||||
for %%# in (HKCU !_sid!) do (
|
||||
for %%A in (
|
||||
%%#\Software\Microsoft\Office\16.0\Common\Licensing
|
||||
%%#\Software\Microsoft\Office\16.0\Common\Identity
|
||||
%%#\Software\Microsoft\Office\16.0\Registration
|
||||
) do (
|
||||
reg query %%# %nul% && (
|
||||
reg delete %%# /f %nul% && (
|
||||
echo Deleted Registry - %%#
|
||||
reg query %%A %nul% && (
|
||||
set regfound=1
|
||||
reg delete %%A /f %nul% && (
|
||||
echo Deleted Registry - %%A
|
||||
) || (
|
||||
echo Failed to Delete - %%#
|
||||
)
|
||||
) || (
|
||||
echo Not Found Registry - %%#
|
||||
echo Failed to Delete - %%A
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
if not defined regfound echo Not Found - Office vNext Registry Keys
|
||||
|
||||
::========================================================================================================================================
|
||||
|
||||
|
@ -29,8 +29,8 @@
|
||||
To run the scripts in unattended mode, check [here](https://massgrave.dev/command_line_switches.html)
|
||||
|
||||
```
|
||||
Latest Version: 2.2
|
||||
Release date: 03-Oct-2023
|
||||
Latest Version: 2.4
|
||||
Release date: 21-Oct-2023
|
||||
```
|
||||
|
||||
### [Troubleshooting / Help](https://massgrave.dev/troubleshoot.html)
|
||||
|
Reference in New Issue
Block a user