This commit is contained in:
2025-08-11 02:45:41 +05:30
parent 596c40ebb6
commit ef5e1bcf01
6 changed files with 94 additions and 147 deletions

View File

@@ -2,6 +2,39 @@
------------------------------------------------------------------------
## 3.5
**ESU for Home editions / Powershell method for Windows 7**
#### HWID:
- The script now won't change region (temporarily) in the top countries.
#### KMS38:
- Removed KMS38 protection (registry lock) feature, it's not important.
#### TSforge:
- Added ESU support for Home editions (license files updated in Windows 10 19045.6156).
- Fixed a bug on W10 ARM64.
#### Change Office Edition:
- Fixed an issue with add/remove apps when more than one language is installed.
- Added detection for unsupported languages in the Office 2019 Perpetual VL update channel.
#### All:
- Fixed a bug in detecting Terminal app.
- The AIO script will now show a tip about ESU updates on Windows 10.
- The AIO script will highlight Ohook in green if O365 is installed.
- In all KMS-related activation options, the script will display a message about KMS renewal notifications on build 26200 and later.
- Added checks for .NET corruption and Windows Sandbox.
- Various fixes and improvements.
#### Powershell command to launch MAS:
- The command `irm https://massgrave.dev/get | iex` is now officially retired. It will display info on how to get the updated code.
- Added a new command for Windows 7, along with an alternative DoH-based command for cases where `get.activated.win` is blocked by ISP/DNS. See https://massgrave.dev/ for details.
------------------------------------------------------------------------
## 3.4
**Bug fixes**

View File

@@ -78,10 +78,19 @@ Run operations in silent mode (no output but the CMD window will still appear)
## Using in the Powershell One-Liner
`& ([ScriptBlock]::Create((irm https://get.activated.win))) /para`
For **Windows 7** and later:
```
& ([ScriptBlock]::Create((New-Object Net.WebClient).DownloadString('https://get.activated.win'))) /para
```
If the above is blocked (by DNS/ISP), try this alternative method (requires **updated Windows 10 or 11**):
```
& ([ScriptBlock]::Create((curl.exe -s --doh-url https://1.1.1.1/dns-query https://get.activated.win | Out-String))) /para
```
- Replace `/para` in this command with the switches from the above table. You can also use multiple switches. For example, `/HWID /Ohook`
- This Powershell one-liner will only work on Windows 8.1 and later.
- To change the edition through the command line, check [here](change_windows_edition.md#manual-edition-change). We didn't automate it in MAS because it requires a reboot in some cases.
------------------------------------------------------------------------

View File

@@ -10,27 +10,39 @@ Open-source Windows and Office activator featuring HWID, Ohook, TSforge, KMS38,
---
### How to Activate Windows / Office?
### How to Activate Windows / Office / Extended Updates (ESU)?
#### Method 1 - PowerShell (Windows 8 and later) ❤️
#### Method 1 - PowerShell ❤️
:::info
1. **Open PowerShell**
To do that, press the Windows key + X, then select PowerShell or Terminal.
1. **Open PowerShell**
Click the **Start Menu**, type `PowerShell`, then open it.
2. **Copy and paste the code below, then press enter.**
```
irm https://get.activated.win | iex
```
Alternatively, you can use the following (this will be deprecated in the future):
```
irm https://massgrave.dev/get | iex
```
2. **Copy and paste the code below, then press enter.**
- For **Windows 8, 10, 11**: 📌
```
irm https://get.activated.win | iex
```
- For **Windows 7** and later:
```
iex ((New-Object Net.WebClient).DownloadString('https://get.activated.win'))
```
<details>
3. You will see the activation options. Choose the activation options highlighted in green.
<summary>**Script not launching❓Click here for info.**</summary>
4. That's all
- 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 [**Method 2**](intro.md#method-2---traditional-windows-vista-and-later).
</details>
3. The activation menu will appear. **Choose the green-highlighted options** to activate Windows or Office.
4. **Done!**
:::
@@ -53,16 +65,17 @@ or
---
- To activate additional products such as **Office for macOS, Visual Studio, RDS CALs, and Windows XP**, check [here](unsupported_products_activation.md).
- To run the scripts in unattended mode, check [here](command_line_switches.md).
:::tip
- Some ISPs/DNS block access to our domains. You can bypass this by enabling [DNS-over-HTTPS (DoH)](https://developers.cloudflare.com/1.1.1.1/encryption/dns-over-https/encrypted-dns-browsers/) in your browser.
- **Having trouble**❓Connect with us [here](troubleshoot.md).
:::
---
### Not working ❓
- If you are **unable to launch MAS** using the PowerShell method, please refer to **Method 2** above.
- If MAS launches but displays errors, check for troubleshooting steps highlighted in blue and follow them.
- If issues persist, feel free to reach out to us [here](troubleshoot.md).
- To activate additional products such as **Office for macOS, Visual Studio, RDS CALs, and Windows XP**, check [here](unsupported_products_activation.md).
- To run the scripts in unattended mode, check [here](command_line_switches.md).
---
@@ -78,7 +91,7 @@ or
## MAS Latest Release
Last Release - v3.4 (3-June-2025)
Last Release - v3.5 (10-Aug-2025)
[GitHub](https://github.com/massgravel/Microsoft-Activation-Scripts) / [Azure DevOps](https://dev.azure.com/massgrave/_git/Microsoft-Activation-Scripts) / [Self-hosted Git](https://git.activated.win/massgrave/Microsoft-Activation-Scripts)
------------------------------------------------------------------------

View File

@@ -1,5 +1,8 @@
# News
### [10-Aug-25] MAS 3.5 update is released
ESU for Home editions / Powershell method for Windows 7, for details check the [changelog](changelog.md)
### [16-July-25] Added July 2025 updated ISOs
Windows 10 22H2 / Windows 11 24H2 / Windows 11 23H2 / Server 2025 / Server 2022 / Server 23H2
https://massgrave.dev/genuine-installation-media

View File

@@ -263,7 +263,7 @@ This activation method does not work if a phone license is not available or if l
| Windows Server 2012 | ServerDatacenter, ServerStandard and their Core variants | [3 Years](https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2012) <br /> Oct 2023 to Oct 2026 | KB5017221 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2022/08/windows8-rt-kb5017221-x64_d01e9b9b910f5f1e374bc1b89a8d00c1a97e215f.msu) <br /> KB2937636 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/crup/2014/07/windows8-rt-kb2937636-x64_29e0b587c8f09bcf635c1b79d09c00eef33113ec.msu) |
| Windows 8.1 | Enterprise, Professional, EmbeddedIndustry and their E/N variants | ESU is not officially supported, <br /> but you can manually install Server 2012 R2 (for x64) updates until Jan 2024, <br /> and Embedded 8.1 (for x86) updates until July 2023 | Build 9600.17415 <br /> + <br /> KB3021910 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2015/04/windows8.1-kb3021910-x64_e291c0c339586e79c36ebfc0211678df91656c3d.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2015/04/windows8.1-kb3021910-x86_7e70173bec00c3d4fe3b0b8cba17b095b4ed2d20.msu) <br /> KB3172614 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2016/07/windows8.1-kb3172614-x64_e41365e643b98ab745c21dba17d1d3b6bb73cfcc.msu)-[x86](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/updt/2016/07/windows8.1-kb3172614-x86_d11c233c8598b734de72665e0d0a3f2ef007b91f.msu) <br /> KB5017220 [x64](https://catalog.s.download.windowsupdate.com/c/msdownload/update/software/secu/2022/08/windows8.1-kb5017220-x64_d771111b22ec71560b207a6735d5ecebd47c4f38.msu)-[x86](https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/secu/2022/08/windows8.1-kb5017220-x86_3134a18dac1b1fe4f656c9e25d0e4aaa75619d16.msu) |
| Windows Server 2012 R2 | ServerDatacenter, ServerStandard and their Core variants | [3 Years](https://learn.microsoft.com/en-us/lifecycle/products/windows-server-2012-r2) <br /> Oct 2023 to Oct 2026 | Same as Windows 8.1 |
| Windows 10 | Education, Enterprise, IoTEnterprise, <br /> Professional, ProfessionalEducation, <br /> ProfessionalWorkstation, ServerRdsh and their N variants | [3 Years](https://learn.microsoft.com/en-us/windows/whats-new/extended-security-updates) <br /> Oct 2025 to Oct 2028 | Windows 10 22H2 (19045.4957) <br /> Just run Windows Update |
| Windows 10 | Core, CoreCountrySpecific, CoreSingleLanguage, <br /> Education, Enterprise, IoTEnterprise, <br /> Professional, ProfessionalEducation, <br /> ProfessionalWorkstation, ServerRdsh and their N variants | [3 Years](https://learn.microsoft.com/en-us/windows/whats-new/extended-security-updates) <br /> Oct 2025 to Oct 2028 | Windows 10 22H2 <br /> <br /> ESU license added in 19045.4957 <br /> <br /> ESU license last updated in 19045.6156 <br /> <br /> Just run Windows Update. |
------------------------------------------------------------------------

View File

@@ -1,127 +1,16 @@
# Check massgrave.dev for more details
write-host
Write-Host "The current command (irm https://massgrave.dev/get | iex) will be retired in the future."
Write-Host -ForegroundColor Green "Use the new command (irm https://get.activated.win | iex) moving forward."
write-host
Write-Host ""
Write-Host "The command 'irm https://massgrave.dev/get | iex' is retired."
Write-Host ""
Write-Host "Visit the site below for the new command:" -ForegroundColor Green
Write-Host ""
Write-Host "https://massgrave.dev/" -ForegroundColor Cyan
Write-Host ""
$psv = (Get-Host).Version.Major
$troubleshoot = 'https://massgrave.dev/troubleshoot'
if ($ExecutionContext.SessionState.LanguageMode.value__ -ne 0) {
$ExecutionContext.SessionState.LanguageMode
Write-Host "PowerShell is not running in Full Language Mode."
Write-Host "Help - https://gravesoft.dev/fix_powershell" -ForegroundColor White -BackgroundColor Blue
return
}
try {
[void][System.AppDomain]::CurrentDomain.GetAssemblies(); [void][System.Math]::Sqrt(144)
}
catch {
Write-Host "Error: $($_.Exception.Message)" -ForegroundColor Red
Write-Host "Powershell failed to load .NET command."
Write-Host "Help - https://gravesoft.dev/in-place_repair_upgrade" -ForegroundColor White -BackgroundColor Blue
return
}
function Check3rdAV {
$cmd = if ($psv -ge 3) { 'Get-CimInstance' } else { 'Get-WmiObject' }
$avList = & $cmd -Namespace root\SecurityCenter2 -Class AntiVirusProduct | Where-Object { $_.displayName -notlike '*windows*' } | Select-Object -ExpandProperty displayName
if ($avList) {
Write-Host '3rd party Antivirus might be blocking the script - ' -ForegroundColor White -BackgroundColor Blue -NoNewline
Write-Host " $($avList -join ', ')" -ForegroundColor DarkRed -BackgroundColor White
}
}
function CheckFile {
param ([string]$FilePath)
if (-not (Test-Path $FilePath)) {
Check3rdAV
Write-Host "Failed to create MAS file in temp folder, aborting!"
Write-Host "Help - $troubleshoot" -ForegroundColor White -BackgroundColor Blue
throw
}
}
try { [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 } catch {}
$URLs = @(
'https://raw.githubusercontent.com/massgravel/Microsoft-Activation-Scripts/67abcd0c8925832fcf4365b9cf3706ab6fbf8571/MAS/All-In-One-Version-KL/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&versionType=Commit&version=67abcd0c8925832fcf4365b9cf3706ab6fbf8571',
'https://git.activated.win/massgrave/Microsoft-Activation-Scripts/raw/commit/67abcd0c8925832fcf4365b9cf3706ab6fbf8571/MAS/All-In-One-Version-KL/MAS_AIO.cmd'
)
$errors = @()
foreach ($URL in $URLs | Sort-Object { Get-Random }) {
try {
if ($psv -ge 3) {
$response = Invoke-WebRequest -Uri $URL -UseBasicParsing
}
else {
$w = New-Object Net.WebClient
$response = $w.DownloadString($URL)
}
break
}
catch {
$errors += $_
}
}
if (-not $response) {
Check3rdAV
foreach ($err in $errors) {
Write-Host "Error: $($err.Exception.Message)" -ForegroundColor Red
}
Write-Host "Failed to retrieve MAS from any of the available repositories, aborting!"
Write-Host "Check if antivirus or firewall is blocking the connection."
Write-Host "Help - $troubleshoot" -ForegroundColor White -BackgroundColor Blue
return
}
# Verify script integrity
$releaseHash = 'EF2F705B9E8BE2816598E2E8B70BADB200733F2287B917D6C9666D95C63AFBF9'
$stream = New-Object IO.MemoryStream
$writer = New-Object IO.StreamWriter $stream
$writer.Write($response)
$writer.Flush()
$stream.Position = 0
$hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($stream)) -replace '-'
if ($hash -ne $releaseHash) {
Write-Warning "Hash ($hash) mismatch, aborting!`nReport this issue at $troubleshoot"
$response = $null
return
}
# Check for AutoRun registry which may create issues with CMD
$paths = "HKCU:\SOFTWARE\Microsoft\Command Processor", "HKLM:\SOFTWARE\Microsoft\Command Processor"
foreach ($path in $paths) {
if (Get-ItemProperty -Path $path -Name "Autorun" -ErrorAction SilentlyContinue) {
Write-Warning "Autorun registry found, CMD may crash! `nManually copy-paste the below command to fix...`nRemove-ItemProperty -Path '$path' -Name 'Autorun'"
}
}
$rand = [Guid]::NewGuid().Guid
$isAdmin = [bool]([Security.Principal.WindowsIdentity]::GetCurrent().Groups -match 'S-1-5-32-544')
$FilePath = if ($isAdmin) { "$env:SystemRoot\Temp\MAS_$rand.cmd" } else { "$env:USERPROFILE\AppData\Local\Temp\MAS_$rand.cmd" }
Set-Content -Path $FilePath -Value "@::: $rand `r`n$response"
CheckFile $FilePath
$env:ComSpec = "$env:SystemRoot\system32\cmd.exe"
$chkcmd = & $env:ComSpec /c "echo CMD is working"
if ($chkcmd -notcontains "CMD is working") {
Write-Warning "cmd.exe is not working.`nReport this issue at $troubleshoot"
}
saps -FilePath $env:ComSpec -ArgumentList "/c """"$FilePath"" $args""" -Wait
CheckFile $FilePath
if ($psv -lt 3) {
write-host ""
write-host "Press any key to exit when process is done..."
if (-not $args) {
Write-Host "Press any key to open the website..."
[void][System.Console]::ReadKey($true)
}
$FilePaths = @("$env:SystemRoot\Temp\MAS*.cmd", "$env:USERPROFILE\AppData\Local\Temp\MAS*.cmd")
foreach ($FilePath in $FilePaths) { Get-Item $FilePath -ErrorAction SilentlyContinue | Remove-Item }
Start-Process "https://massgrave.dev/"
}