mirror of
https://github.com/massgravel/Microsoft-Activation-Scripts.git
synced 2025-12-07 13:14:59 +00:00
Compare commits
17 Commits
3.7
...
4bf82f576c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4bf82f576c | ||
|
|
1e444671be | ||
|
|
0aee35e673 | ||
|
|
77c4bacde6 | ||
|
|
117ccae4ed | ||
|
|
470d3b900e | ||
|
|
c9789e9aa3 | ||
|
|
0d4ab4b435 | ||
|
|
8c440c5c48 | ||
|
|
233c9d1b29 | ||
|
|
4953ed82b5 | ||
|
|
b627d74f5a | ||
|
|
07fd04ea10 | ||
|
|
e5ed8c2487 | ||
|
|
c37609eabe | ||
|
|
4e06a401b5 | ||
|
|
b74d1155b9 |
8
.gitattributes
vendored
8
.gitattributes
vendored
@@ -1,4 +1,4 @@
|
|||||||
MAS export-ignore
|
# MAS export-ignore
|
||||||
LICENSE export-ignore
|
# LICENSE export-ignore
|
||||||
README.md export-ignore
|
# README.md export-ignore
|
||||||
.gitattributes export-ignore
|
# .gitattributes export-ignore
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1158,6 +1158,11 @@ set spperror=%errorlevel%
|
|||||||
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
||||||
%eline%
|
%eline%
|
||||||
echo sc start %_slser% [Error Code: %spperror%]
|
echo sc start %_slser% [Error Code: %spperror%]
|
||||||
|
if %spperror% EQU 1053 (
|
||||||
|
echo:
|
||||||
|
call :dk_color %Blue% "Reboot your machine using the restart option and try again."
|
||||||
|
call :dk_color %Blue% "If it still does not work, go back to Main Menu, select Troubleshoot and run Fix WPA Registry option."
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
@@ -1469,6 +1474,13 @@ if %_wmic% EQU 1 wmic path Win32_ComputerSystem get CreationClassName /value %nu
|
|||||||
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
||||||
|
|
||||||
if %errorlevel% NEQ 0 set wmifailed=1
|
if %errorlevel% NEQ 0 set wmifailed=1
|
||||||
|
|
||||||
|
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
||||||
|
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
||||||
|
set error_code=%errorlevel%
|
||||||
|
cmd /c exit /b %error_code%
|
||||||
|
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
||||||
|
|
||||||
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
||||||
|
|
||||||
if defined wmifailed (
|
if defined wmifailed (
|
||||||
@@ -1662,12 +1674,6 @@ set showfix=1
|
|||||||
|
|
||||||
:: Check SoftwareLicensingService
|
:: Check SoftwareLicensingService
|
||||||
|
|
||||||
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
|
||||||
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
|
||||||
set error_code=%errorlevel%
|
|
||||||
cmd /c exit /b %error_code%
|
|
||||||
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
|
||||||
|
|
||||||
if %error_code% NEQ 0 (
|
if %error_code% NEQ 0 (
|
||||||
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
||||||
if not defined showfix (
|
if not defined showfix (
|
||||||
@@ -2032,6 +2038,7 @@ d4bdc678-0a4b-4a32-a5b3-aaa24c3b0f24_K9VKN-3BGWV-Y624W-MCRMQ-BH%f%DCD_202_X22-53
|
|||||||
92fb8726-92a8-4ffc-94ce-f82e07444653_KY7PN-VR6RX-83W6Y-6DDYQ-T6%f%R4W_203_X22-53847_0_____Retail_CloudEdition
|
92fb8726-92a8-4ffc-94ce-f82e07444653_KY7PN-VR6RX-83W6Y-6DDYQ-T6%f%R4W_203_X22-53847_0_____Retail_CloudEdition
|
||||||
5a85300a-bfce-474f-ac07-a30983e3fb90_N979K-XWD77-YW3GB-HBGH6-D3%f%2MH_205_X23-15042_0_____OEM:DM_IoTEnterpriseSK
|
5a85300a-bfce-474f-ac07-a30983e3fb90_N979K-XWD77-YW3GB-HBGH6-D3%f%2MH_205_X23-15042_0_____OEM:DM_IoTEnterpriseSK
|
||||||
80083eae-7031-4394-9e88-4901973d56fe_P8Q7T-WNK7X-PMFXY-VXHBG-RR%f%K69_206_X23-62084_0_____OEM:DM_IoTEnterpriseK
|
80083eae-7031-4394-9e88-4901973d56fe_P8Q7T-WNK7X-PMFXY-VXHBG-RR%f%K69_206_X23-62084_0_____OEM:DM_IoTEnterpriseK
|
||||||
|
1bc2140b-285b-4351-b99c-26a126104b29_TMP2N-KGFHJ-PWM6F-68KCQ-3P%f%JBP_210_X23-60513_0_____Retail_WNC
|
||||||
) do (
|
) do (
|
||||||
for /f "tokens=1-9 delims=_" %%A in ("%%#") do (
|
for /f "tokens=1-9 delims=_" %%A in ("%%#") do (
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1859,6 +1859,11 @@ set spperror=%errorlevel%
|
|||||||
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
||||||
%eline%
|
%eline%
|
||||||
echo sc start %_slser% [Error Code: %spperror%]
|
echo sc start %_slser% [Error Code: %spperror%]
|
||||||
|
if %spperror% EQU 1053 (
|
||||||
|
echo:
|
||||||
|
call :dk_color %Blue% "Reboot your machine using the restart option and try again."
|
||||||
|
call :dk_color %Blue% "If it still does not work, go back to Main Menu, select Troubleshoot and run Fix WPA Registry option."
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
@@ -2155,6 +2160,13 @@ if %_wmic% EQU 1 wmic path Win32_ComputerSystem get CreationClassName /value %nu
|
|||||||
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
||||||
|
|
||||||
if %errorlevel% NEQ 0 set wmifailed=1
|
if %errorlevel% NEQ 0 set wmifailed=1
|
||||||
|
|
||||||
|
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
||||||
|
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
||||||
|
set error_code=%errorlevel%
|
||||||
|
cmd /c exit /b %error_code%
|
||||||
|
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
||||||
|
|
||||||
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
||||||
|
|
||||||
if defined wmifailed (
|
if defined wmifailed (
|
||||||
@@ -2348,12 +2360,6 @@ set showfix=1
|
|||||||
|
|
||||||
:: Check SoftwareLicensingService
|
:: Check SoftwareLicensingService
|
||||||
|
|
||||||
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
|
||||||
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
|
||||||
set error_code=%errorlevel%
|
|
||||||
cmd /c exit /b %error_code%
|
|
||||||
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
|
||||||
|
|
||||||
if %error_code% NEQ 0 (
|
if %error_code% NEQ 0 (
|
||||||
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
||||||
if not defined showfix (
|
if not defined showfix (
|
||||||
|
|||||||
@@ -655,7 +655,7 @@ set altedition=
|
|||||||
call :dk_actids 55c92734-d682-4d71-983e-d6ec3f16059f
|
call :dk_actids 55c92734-d682-4d71-983e-d6ec3f16059f
|
||||||
if defined allapps call :ksdata winkey
|
if defined allapps call :ksdata winkey
|
||||||
if not defined key call :k_gvlk %nul%
|
if not defined key call :k_gvlk %nul%
|
||||||
if defined allapps if not defined key call :kms38fallback
|
if defined allapps if not defined key call :kmsfallback
|
||||||
|
|
||||||
if defined altkey (set key=%altkey%&set changekey=1)
|
if defined altkey (set key=%altkey%&set changekey=1)
|
||||||
|
|
||||||
@@ -2862,6 +2862,11 @@ set spperror=%errorlevel%
|
|||||||
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
||||||
%eline%
|
%eline%
|
||||||
echo sc start %_slser% [Error Code: %spperror%]
|
echo sc start %_slser% [Error Code: %spperror%]
|
||||||
|
if %spperror% EQU 1053 (
|
||||||
|
echo:
|
||||||
|
call :dk_color %Blue% "Reboot your machine using the restart option and try again."
|
||||||
|
call :dk_color %Blue% "If it still does not work, go back to Main Menu, select Troubleshoot and run Fix WPA Registry option."
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
@@ -3218,6 +3223,13 @@ if %_wmic% EQU 1 wmic path Win32_ComputerSystem get CreationClassName /value %nu
|
|||||||
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
||||||
|
|
||||||
if %errorlevel% NEQ 0 set wmifailed=1
|
if %errorlevel% NEQ 0 set wmifailed=1
|
||||||
|
|
||||||
|
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
||||||
|
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
||||||
|
set error_code=%errorlevel%
|
||||||
|
cmd /c exit /b %error_code%
|
||||||
|
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
||||||
|
|
||||||
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
||||||
|
|
||||||
if defined wmifailed (
|
if defined wmifailed (
|
||||||
@@ -3411,12 +3423,6 @@ set showfix=1
|
|||||||
|
|
||||||
:: Check SoftwareLicensingService
|
:: Check SoftwareLicensingService
|
||||||
|
|
||||||
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
|
||||||
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
|
||||||
set error_code=%errorlevel%
|
|
||||||
cmd /c exit /b %error_code%
|
|
||||||
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
|
||||||
|
|
||||||
if %error_code% NEQ 0 (
|
if %error_code% NEQ 0 (
|
||||||
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
||||||
if not defined showfix (
|
if not defined showfix (
|
||||||
@@ -4220,7 +4226,7 @@ exit /b
|
|||||||
:: Separator = _
|
:: Separator = _
|
||||||
|
|
||||||
|
|
||||||
:kms38fallback
|
:kmsfallback
|
||||||
|
|
||||||
set notfoundaltactID=
|
set notfoundaltactID=
|
||||||
if %_NoEditionChange%==1 exit /b
|
if %_NoEditionChange%==1 exit /b
|
||||||
|
|||||||
@@ -1112,12 +1112,17 @@ if exist "%SystemRoot%\Servicing\Packages\WinEmb-Branding-Embedded-Standard-Pack
|
|||||||
)
|
)
|
||||||
if not defined allapps call :dk_actids 55c92734-d682-4d71-983e-d6ec3f16059f
|
if not defined allapps call :dk_actids 55c92734-d682-4d71-983e-d6ec3f16059f
|
||||||
|
|
||||||
set w10EsuEditions=Education-EducationN-Enterprise-EnterpriseN-Professional-ProfessionalEducation-ProfessionalEducationN-ProfessionalN-ProfessionalWorkstation-ProfessionalWorkstationN-ServerRdsh
|
set w10EsuEditions=Education-EducationN-Enterprise-EnterpriseN-Professional-ProfessionalEducation-ProfessionalEducationN-ProfessionalN-ProfessionalWorkstation-ProfessionalWorkstationN
|
||||||
|
|
||||||
|
set minbuild=0
|
||||||
|
if /i %tsedition%==ServerRdsh set minbuild=5552
|
||||||
|
for %%# in (Core CoreN CoreCountrySpecific CoreSingleLanguage) do (if /i %tsedition%==%%# set minbuild=6156)
|
||||||
|
if /i %tsedition%==PPIPro set minbuild=6388
|
||||||
|
|
||||||
set /a UBR=0
|
set /a UBR=0
|
||||||
for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v UBR %nul6%') do if not errorlevel 1 set /a UBR=%%b
|
for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v UBR %nul6%') do if not errorlevel 1 set /a UBR=%%b
|
||||||
if %winbuild% EQU 19045 if %UBR% GEQ 6156 (
|
if %winbuild% EQU 19045 if %minbuild% GTR 0 if %UBR% GEQ %minbuild% (
|
||||||
set w10EsuEditionsLaterAdded=Core-CoreN-CoreCountrySpecific-CoreSingleLanguage-IoTEnterprise-
|
set w10EsuEditionsLaterAdded=%tsedition%-
|
||||||
)
|
)
|
||||||
|
|
||||||
if not defined isThinpc if not defined isltsc for %%# in (
|
if not defined isThinpc if not defined isltsc for %%# in (
|
||||||
@@ -1867,14 +1872,14 @@ $filteredResults = $results | Where-Object {
|
|||||||
$true
|
$true
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$_.Name -notlike "*CountrySpecific*"
|
$_.Name -like "*ESU*" -or $_.Name -notlike "*CountrySpecific*"
|
||||||
}
|
}
|
||||||
} | Where-Object {
|
} | Where-Object {
|
||||||
if ($env:tsedition -like "*CloudEdition*") {
|
if ($env:tsedition -like "*CloudEdition*") {
|
||||||
$true
|
$true
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$_.Name -notlike "*CloudEdition*"
|
$_.Name -like "*ESU*" -or $_.Name -notlike "*CloudEdition*"
|
||||||
}
|
}
|
||||||
} | Where-Object {
|
} | Where-Object {
|
||||||
$_.Name -like "*CountrySpecific*" -or (IsMuiNotLocked $_.ID)
|
$_.Name -like "*CountrySpecific*" -or (IsMuiNotLocked $_.ID)
|
||||||
@@ -1948,7 +1953,7 @@ if %_actman%==0 (if not defined showfix call :dk_color %Blue% "%_fixmsg%")
|
|||||||
set fixes=%fixes% %mas%troubleshoot
|
set fixes=%fixes% %mas%troubleshoot
|
||||||
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
call :dk_color2 %Blue% "Check this webpage for help - " %_Yellow% " %mas%troubleshoot"
|
||||||
) else (
|
) else (
|
||||||
if /i %tsmethod%==KMS4k if %winbuild% GEQ 26200 (
|
if /i %tsmethod%==KMS4k if %winbuild% GEQ 26100 (
|
||||||
echo:
|
echo:
|
||||||
call :dk_color %Gray% "In Windows settings, you may see a renewal notification for activation that can be ignored."
|
call :dk_color %Gray% "In Windows settings, you may see a renewal notification for activation that can be ignored."
|
||||||
if /i %_actmethod%==Auto call :dk_color %Gray% "To avoid this notification, run the script with an internet connection to use the StaticCID method."
|
if /i %_actmethod%==Auto call :dk_color %Gray% "To avoid this notification, run the script with an internet connection to use the StaticCID method."
|
||||||
@@ -2912,6 +2917,11 @@ set spperror=%errorlevel%
|
|||||||
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
||||||
%eline%
|
%eline%
|
||||||
echo sc start %_slser% [Error Code: %spperror%]
|
echo sc start %_slser% [Error Code: %spperror%]
|
||||||
|
if %spperror% EQU 1053 (
|
||||||
|
echo:
|
||||||
|
call :dk_color %Blue% "Reboot your machine using the restart option and try again."
|
||||||
|
call :dk_color %Blue% "If it still does not work, go back to Main Menu, select Troubleshoot and run Fix WPA Registry option."
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
@@ -3223,6 +3233,13 @@ if %_wmic% EQU 1 wmic path Win32_ComputerSystem get CreationClassName /value %nu
|
|||||||
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
if %_wmic% EQU 0 %psc% "Get-WmiObject -Class Win32_ComputerSystem | Select-Object -Property CreationClassName" %nul2% | find /i "computersystem" %nul1%
|
||||||
|
|
||||||
if %errorlevel% NEQ 0 set wmifailed=1
|
if %errorlevel% NEQ 0 set wmifailed=1
|
||||||
|
|
||||||
|
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
||||||
|
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
||||||
|
set error_code=%errorlevel%
|
||||||
|
cmd /c exit /b %error_code%
|
||||||
|
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
||||||
|
|
||||||
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
echo "%error_code%" | findstr /i "0x800410 0x800440 0x80131501" %nul1% && set wmifailed=1& :: https://learn.microsoft.com/en-us/windows/win32/wmisdk/wmi-error-constants
|
||||||
|
|
||||||
if defined wmifailed (
|
if defined wmifailed (
|
||||||
@@ -3416,12 +3433,6 @@ set showfix=1
|
|||||||
|
|
||||||
:: Check SoftwareLicensingService
|
:: Check SoftwareLicensingService
|
||||||
|
|
||||||
if %_wmic% EQU 1 wmic path %sps% get Version %nul%
|
|
||||||
if %_wmic% EQU 0 %psc% "try { $null=([WMISEARCHER]'SELECT * FROM %sps%').Get().Version; exit 0 } catch { exit $_.Exception.InnerException.HResult }" %nul%
|
|
||||||
set error_code=%errorlevel%
|
|
||||||
cmd /c exit /b %error_code%
|
|
||||||
if %error_code% NEQ 0 set "error_code=0x%=ExitCode%"
|
|
||||||
|
|
||||||
if %error_code% NEQ 0 (
|
if %error_code% NEQ 0 (
|
||||||
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
call :dk_color %Red% "Checking SoftwareLicensingService [Not Working] [%error_code%]"
|
||||||
if not defined showfix (
|
if not defined showfix (
|
||||||
@@ -8837,6 +8848,7 @@ namespace LibTSforge.PhysicalStore
|
|||||||
$ErrorActionPreference = 'Stop'
|
$ErrorActionPreference = 'Stop'
|
||||||
$binPath = "$env:_work\BIN\LibTSforge.dll"
|
$binPath = "$env:_work\BIN\LibTSforge.dll"
|
||||||
$psMajorVer = (Get-Host).Version.Major
|
$psMajorVer = (Get-Host).Version.Major
|
||||||
|
$build = [System.Environment]::OSVersion.Version.Build
|
||||||
|
|
||||||
if (Test-Path -LiteralPath $binPath) {
|
if (Test-Path -LiteralPath $binPath) {
|
||||||
Write-Host "LibTSforge.dll found in BIN folder. Loading the DLL..."
|
Write-Host "LibTSforge.dll found in BIN folder. Loading the DLL..."
|
||||||
@@ -8935,7 +8947,12 @@ if (-not $env:resetstuff) {
|
|||||||
}
|
}
|
||||||
if ($env:tsmethod -eq "KMS4k") {
|
if ($env:tsmethod -eq "KMS4k") {
|
||||||
$GracePeriodStatus = Get-WmiInfo -tsactid $tsactid -property "GracePeriodRemaining"
|
$GracePeriodStatus = Get-WmiInfo -tsactid $tsactid -property "GracePeriodRemaining"
|
||||||
if ($GracePeriodStatus -gt 259200) { $activated = 1 }
|
if ($GracePeriodStatus -eq 259200 -or ([datetime]::Now.AddMinutes($GracePeriodStatus)).Year -gt 2038) {
|
||||||
|
if ((($build -ge 26100 -and $GracePeriodStatus -ge 259200) -or
|
||||||
|
($build -lt 26100 -and $GracePeriodStatus -gt 259200))) {
|
||||||
|
$activated = 1
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$licenseStatus = Get-WmiInfo -tsactid $tsactid -property "LicenseStatus"
|
$licenseStatus = Get-WmiInfo -tsactid $tsactid -property "LicenseStatus"
|
||||||
@@ -8949,7 +8966,13 @@ if (-not $env:resetstuff) {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if ($env:tsmethod -eq "KMS4k") {
|
if ($env:tsmethod -eq "KMS4k") {
|
||||||
Write-Host "[$prodName] is activated till $([DateTime]::Now.AddMinutes($GracePeriodStatus).ToString('yyyy-MM-dd HH:mm:ss')) with $env:tsmethod." -ForegroundColor White -BackgroundColor DarkGreen
|
if ($build -ge 26100) {
|
||||||
|
Write-Host "[$prodName] is activated with KMS4k for over 4,000 years." -ForegroundColor White -BackgroundColor DarkGreen
|
||||||
|
Write-Host "From build 26100.7019, Windows will always display and stay at 180 days remaining if the actual period is longer." -ForegroundColor White -BackgroundColor Darkgray
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Write-Host "[$prodName] is activated till $([DateTime]::Now.AddMinutes($GracePeriodStatus).ToString('yyyy-MM-dd HH:mm:ss')) with $env:tsmethod." -ForegroundColor White -BackgroundColor DarkGreen
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Write-Host "[$prodName] is permanently activated with $env:tsmethod." -ForegroundColor White -BackgroundColor DarkGreen
|
Write-Host "[$prodName] is permanently activated with $env:tsmethod." -ForegroundColor White -BackgroundColor DarkGreen
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ Activation Type Supported Product Activation Period
|
|||||||
HWID - Windows 10-11 - Permanent
|
HWID - Windows 10-11 - Permanent
|
||||||
Ohook - Office - Permanent
|
Ohook - Office - Permanent
|
||||||
TSforge - Windows / ESU / Office - Permanent
|
TSforge - Windows / ESU / Office - Permanent
|
||||||
KMS38 - Windows 10-11-Server - Till the Year 2038
|
|
||||||
Online KMS - Windows / Office - 180 Days. Lifetime With Renewal Task
|
Online KMS - Windows / Office - 180 Days. Lifetime With Renewal Task
|
||||||
|
|
||||||
--------------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -1618,6 +1618,11 @@ set spperror=%errorlevel%
|
|||||||
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
||||||
%eline%
|
%eline%
|
||||||
echo sc start %_slser% [Error Code: %spperror%]
|
echo sc start %_slser% [Error Code: %spperror%]
|
||||||
|
if %spperror% EQU 1053 (
|
||||||
|
echo:
|
||||||
|
call :dk_color %Blue% "Reboot your machine using the restart option and try again."
|
||||||
|
call :dk_color %Blue% "If it still does not work, go back to Main Menu, select Troubleshoot and run Fix WPA Registry option."
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
|
|||||||
@@ -547,7 +547,11 @@ echo:
|
|||||||
|
|
||||||
for %%A in (%_ntarget%) do (
|
for %%A in (%_ntarget%) do (
|
||||||
set /a counter+=1
|
set /a counter+=1
|
||||||
|
if /i %%A==IoTEnterprise (
|
||||||
|
echo [!counter!] %%A [GAC, not LTSC]
|
||||||
|
) else (
|
||||||
echo [!counter!] %%A
|
echo [!counter!] %%A
|
||||||
|
)
|
||||||
set targetedition!counter!=%%A
|
set targetedition!counter!=%%A
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -968,6 +972,11 @@ set spperror=%errorlevel%
|
|||||||
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
if %spperror% NEQ 1056 if %spperror% NEQ 0 (
|
||||||
%eline%
|
%eline%
|
||||||
echo sc start %_slser% [Error Code: %spperror%]
|
echo sc start %_slser% [Error Code: %spperror%]
|
||||||
|
if %spperror% EQU 1053 (
|
||||||
|
echo:
|
||||||
|
call :dk_color %Blue% "Reboot your machine using the restart option and try again."
|
||||||
|
call :dk_color %Blue% "If it still does not work, go back to Main Menu, select Troubleshoot and run Fix WPA Registry option."
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
echo:
|
echo:
|
||||||
|
|||||||
@@ -406,7 +406,6 @@ goto done2
|
|||||||
)
|
)
|
||||||
|
|
||||||
set HWID_Activation.cmd=Activators\HWID_Activation.cmd
|
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 Online_KMS_Activation.cmd=Activators\Online_KMS_Activation.cmd
|
||||||
set Ohook_Activation_AIO.cmd=Activators\Ohook_Activation_AIO.cmd
|
set Ohook_Activation_AIO.cmd=Activators\Ohook_Activation_AIO.cmd
|
||||||
set TSforge_Activation.cmd=Activators\TSforge_Activation.cmd
|
set TSforge_Activation.cmd=Activators\TSforge_Activation.cmd
|
||||||
@@ -415,7 +414,6 @@ pushd "!_work!"
|
|||||||
set _nofile=
|
set _nofile=
|
||||||
for %%# in (
|
for %%# in (
|
||||||
%HWID_Activation.cmd%
|
%HWID_Activation.cmd%
|
||||||
%KMS38_Activation.cmd%
|
|
||||||
%Online_KMS_Activation.cmd%
|
%Online_KMS_Activation.cmd%
|
||||||
%Ohook_Activation_AIO.cmd%
|
%Ohook_Activation_AIO.cmd%
|
||||||
%TSforge_Activation.cmd%
|
%TSforge_Activation.cmd%
|
||||||
@@ -446,31 +444,29 @@ echo:
|
|||||||
echo: Extract $OEM$ folder on the desktop
|
echo: Extract $OEM$ folder on the desktop
|
||||||
echo: ____________________________________________________________
|
echo: ____________________________________________________________
|
||||||
echo:
|
echo:
|
||||||
echo: [1] HWID [Windows]
|
echo: [1] HWID [Windows]
|
||||||
echo: [2] Ohook [Office]
|
echo: [2] Ohook [Office]
|
||||||
echo: [3] TSforge [Windows / ESU / Office]
|
echo: [3] TSforge [Windows / ESU / Office]
|
||||||
echo: [4] KMS38 [Windows]
|
echo: [4] Online KMS [Windows / Office]
|
||||||
echo: [5] Online KMS [Windows / Office]
|
|
||||||
echo:
|
echo:
|
||||||
echo: [6] HWID [Windows] ^+ Ohook [Office]
|
echo: [5] HWID [Windows] ^+ Ohook [Office]
|
||||||
echo: [7] HWID [Windows] ^+ Ohook [Office] ^+ TSforge [ESU]
|
echo: [6] HWID [Windows] ^+ Ohook [Office] ^+ TSforge [ESU]
|
||||||
echo: [8] TSforge [Windows] ^+ Online KMS [Office]
|
echo: [7] TSforge [Windows / ESU] ^+ Ohook [Office]
|
||||||
echo:
|
echo:
|
||||||
call :dk_color2 %_White% " [R] " %_Green% "ReadMe"
|
call :dk_color2 %_White% " [R] " %_Green% "ReadMe"
|
||||||
echo: [0] Exit
|
echo: [0] Exit
|
||||||
echo: ____________________________________________________________
|
echo: ____________________________________________________________
|
||||||
echo:
|
echo:
|
||||||
call :dk_color2 %_White% " " %_Green% "Choose a menu option using your keyboard :"
|
call :dk_color2 %_White% " " %_Green% "Choose a menu option using your keyboard :"
|
||||||
choice /C:12345678R0 /N
|
choice /C:1234567R0 /N
|
||||||
set _erl=%errorlevel%
|
set _erl=%errorlevel%
|
||||||
|
|
||||||
if %_erl%==10 exit /b
|
if %_erl%==9 exit /b
|
||||||
if %_erl%==9 start %mas%oem-folder &goto :Menu
|
if %_erl%==8 start %mas%oem-folder &goto :Menu
|
||||||
if %_erl%==8 goto:tsforge_kms
|
if %_erl%==7 goto:tsforge_ohook
|
||||||
if %_erl%==7 goto:hwid_ohook_tsforge
|
if %_erl%==6 goto:hwid_ohook_tsforge
|
||||||
if %_erl%==6 goto:hwid_ohook
|
if %_erl%==5 goto:hwid_ohook
|
||||||
if %_erl%==5 goto:kms
|
if %_erl%==4 goto:kms
|
||||||
if %_erl%==4 goto:kms38
|
|
||||||
if %_erl%==3 goto:tsforge
|
if %_erl%==3 goto:tsforge
|
||||||
if %_erl%==2 goto:ohook
|
if %_erl%==2 goto:ohook
|
||||||
if %_erl%==1 goto:hwid
|
if %_erl%==1 goto:hwid
|
||||||
@@ -568,36 +564,6 @@ cd \
|
|||||||
|
|
||||||
::========================================================================================================================================
|
::========================================================================================================================================
|
||||||
|
|
||||||
:kms38
|
|
||||||
|
|
||||||
cls
|
|
||||||
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
|
||||||
pushd "!_work!"
|
|
||||||
copy /y /b "%KMS38_Activation.cmd%" "!_dir!\KMS38_Activation.cmd" %nul%
|
|
||||||
popd
|
|
||||||
call :export kms38_setup
|
|
||||||
|
|
||||||
set _error=
|
|
||||||
if not exist "!_dir!\KMS38_Activation.cmd" set _error=1
|
|
||||||
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
|
||||||
if defined _error goto errorfound
|
|
||||||
|
|
||||||
set oem=KMS38
|
|
||||||
goto done
|
|
||||||
|
|
||||||
:kms38_setup:
|
|
||||||
@echo off
|
|
||||||
|
|
||||||
fltmc >nul || exit /b
|
|
||||||
|
|
||||||
call "%~dp0KMS38_Activation.cmd" /KMS38
|
|
||||||
|
|
||||||
cd \
|
|
||||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
|
||||||
:kms38_setup:
|
|
||||||
|
|
||||||
::========================================================================================================================================
|
|
||||||
|
|
||||||
:kms
|
:kms
|
||||||
|
|
||||||
cls
|
cls
|
||||||
@@ -710,41 +676,41 @@ cd \
|
|||||||
|
|
||||||
::========================================================================================================================================
|
::========================================================================================================================================
|
||||||
|
|
||||||
:tsforge_kms
|
:tsforge_ohook
|
||||||
|
|
||||||
cls
|
cls
|
||||||
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
md "!desktop!\$OEM$\$$\Setup\Scripts"
|
||||||
pushd "!_work!"
|
pushd "!_work!"
|
||||||
copy /y /b "%TSforge_Activation.cmd%" "!_dir!\TSforge_Activation.cmd" %nul%
|
copy /y /b "%TSforge_Activation.cmd%" "!_dir!\TSforge_Activation.cmd" %nul%
|
||||||
copy /y /b "%Online_KMS_Activation.cmd%" "!_dir!\Online_KMS_Activation.cmd" %nul%
|
copy /y /b "%Ohook_Activation_AIO.cmd%" "!_dir!\Ohook_Activation_AIO.cmd" %nul%
|
||||||
popd
|
popd
|
||||||
call :export tsforge_kms_setup
|
call :export tsforge_ohook_setup
|
||||||
|
|
||||||
set _error=
|
set _error=
|
||||||
if not exist "!_dir!\TSforge_Activation.cmd" set _error=1
|
if not exist "!_dir!\TSforge_Activation.cmd" set _error=1
|
||||||
if not exist "!_dir!\Online_KMS_Activation.cmd" set _error=1
|
if not exist "!_dir!\Ohook_Activation_AIO.cmd" set _error=1
|
||||||
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
if not exist "!_dir!\SetupComplete.cmd" set _error=1
|
||||||
if defined _error goto errorfound
|
if defined _error goto errorfound
|
||||||
|
|
||||||
set oem=TSforge [Windows] + Online KMS [Office]
|
set oem=TSforge [Windows / ESU] + Ohook [Office]
|
||||||
goto done
|
goto done
|
||||||
|
|
||||||
:tsforge_kms_setup:
|
:tsforge_ohook_setup:
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
fltmc >nul || exit /b
|
fltmc >nul || exit /b
|
||||||
|
|
||||||
setlocal
|
setlocal
|
||||||
call "%~dp0TSforge_Activation.cmd" /Z-Windows
|
call "%~dp0TSforge_Activation.cmd" /Z-Windows /Z-ESU
|
||||||
endlocal
|
endlocal
|
||||||
|
|
||||||
setlocal
|
setlocal
|
||||||
call "%~dp0Online_KMS_Activation.cmd" /K-Office
|
call "%~dp0Ohook_Activation_AIO.cmd" /Ohook
|
||||||
endlocal
|
endlocal
|
||||||
|
|
||||||
cd \
|
cd \
|
||||||
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
(goto) 2>nul & (if "%~dp0"=="%SystemRoot%\Setup\Scripts\" rd /s /q "%~dp0")
|
||||||
:tsforge_kms_setup:
|
:tsforge_ohook_setup:
|
||||||
|
|
||||||
::========================================================================================================================================
|
::========================================================================================================================================
|
||||||
|
|
||||||
@@ -760,11 +726,6 @@ echo ______________________________________________________________
|
|||||||
echo:
|
echo:
|
||||||
call :dk_color %Blue% "%oem%"
|
call :dk_color %Blue% "%oem%"
|
||||||
call :dk_color %Green% "$OEM$ folder was successfully created on your Desktop."
|
call :dk_color %Green% "$OEM$ folder was successfully created on your Desktop."
|
||||||
echo "%oem%" | find /i "38" %nul% && (
|
|
||||||
echo:
|
|
||||||
echo To KMS38 activate Server Cor/Acor editions [No GUI Versions],
|
|
||||||
echo Check this page %mas%oem-folder
|
|
||||||
)
|
|
||||||
echo ______________________________________________________________
|
echo ______________________________________________________________
|
||||||
|
|
||||||
:done2
|
:done2
|
||||||
|
|||||||
39
README.md
39
README.md
@@ -18,26 +18,15 @@
|
|||||||
```
|
```
|
||||||
irm https://get.activated.win | iex
|
irm https://get.activated.win | iex
|
||||||
```
|
```
|
||||||
|
If the above is blocked (by ISP/DNS), try this (needs updated Windows 10 or 11):
|
||||||
|
```
|
||||||
|
iex (curl.exe -s --doh-url https://1.1.1.1/dns-query https://get.activated.win | Out-String)
|
||||||
|
```
|
||||||
- For **Windows 7** and later:
|
- For **Windows 7** and later:
|
||||||
```
|
```
|
||||||
iex ((New-Object Net.WebClient).DownloadString('https://get.activated.win'))
|
iex ((New-Object Net.WebClient).DownloadString('https://get.activated.win'))
|
||||||
```
|
```
|
||||||
|
- **Script not launching❓Use the below-listed Method 2.**
|
||||||
<details>
|
|
||||||
|
|
||||||
<summary>Script not launching❓Click here for info.</summary>
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
- If the above is blocked (by ISP/DNS), try this (needs **updated Windows 10 or 11**):
|
|
||||||
```
|
|
||||||
iex (curl.exe -s --doh-url https://1.1.1.1/dns-query https://get.activated.win | Out-String)
|
|
||||||
```
|
|
||||||
- If that fails or you have an older Windows, use the below-listed Method 2.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
</details>
|
|
||||||
|
|
||||||
3. The activation menu will appear. **Choose the green-highlighted options** to activate Windows or Office.
|
3. The activation menu will appear. **Choose the green-highlighted options** to activate Windows or Office.
|
||||||
|
|
||||||
@@ -47,20 +36,10 @@
|
|||||||
|
|
||||||
### Method 2 - Traditional (Windows Vista and later)
|
### Method 2 - Traditional (Windows Vista and later)
|
||||||
|
|
||||||
<details>
|
1. Download the script: [**MAS_AIO.cmd**](https://dev.azure.com/massgrave/Microsoft-Activation-Scripts/_apis/git/repositories/Microsoft-Activation-Scripts/items?path=/MAS/All-In-One-Version-KL/MAS_AIO.cmd&download=true) or the [full ZIP](https://dev.azure.com/massgrave/Microsoft-Activation-Scripts/_apis/git/repositories/Microsoft-Activation-Scripts/items?$format=zip).
|
||||||
<summary>Click here to view</summary>
|
2. Run the file named `MAS_AIO.cmd`.
|
||||||
|
3. You will see the activation options. Follow the on-screen instructions.
|
||||||
1. Download the file using one of the links below:
|
4. That's all.
|
||||||
`https://github.com/massgravel/Microsoft-Activation-Scripts/archive/refs/heads/master.zip`
|
|
||||||
or
|
|
||||||
`https://git.activated.win/massgrave/Microsoft-Activation-Scripts/archive/master.zip`
|
|
||||||
2. Right-click on the downloaded zip file and extract it.
|
|
||||||
3. In the extracted folder, find the folder named `All-In-One-Version`.
|
|
||||||
4. Run the file named `MAS_AIO.cmd`.
|
|
||||||
5. You will see the activation options. Follow the on-screen instructions.
|
|
||||||
6. That's all.
|
|
||||||
|
|
||||||
</details>
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user