3.5
This commit is contained in:
@@ -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**
|
||||
|
@@ -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.
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
@@ -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)
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
@@ -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
|
||||
|
@@ -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. |
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
133
static/get.ps1
133
static/get.ps1
@@ -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/"
|
||||
}
|
||||
|
Reference in New Issue
Block a user