if%_wmic%EQU 1 set"chkedi=for /f "tokens=2 delims=="%%a in ('"wmic path %spp% where (ApplicationID='55c92734-d682-4d71-983e-d6ec3f16059f' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL) get LicenseFamily /VALUE"%nul6%')"
if%_wmic%EQU 1 set"chkedi=for /f "tokens=2 delims=="%%a in ('"wmic path %spp% where (ApplicationID='55c92734-d682-4d71-983e-d6ec3f16059f' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL) get LicenseFamily /VALUE"%nul6%')"
if%_wmic%EQU 0 set"chkedi=for /f "tokens=2 delims=="%%a in ('%psc%"(([WMISEARCHER]'SELECT LicenseFamily FROM %spp% WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f'' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL').Get()).LicenseFamily ^|%% {echo ('LicenseFamily='+$_)}"%nul6%')"
if%_wmic%EQU 0 set"chkedi=for /f "tokens=2 delims=="%%a in ('%psc%"(([WMISEARCHER]'SELECT LicenseFamily FROM %spp% WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f'' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL').Get()).LicenseFamily ^|%% {echo ('LicenseFamily='+$_)}"%nul6%')"
ifnotdefinedosedition%chkedi% do if not errorlevel 1 (call set "osedition=%%a")
%chkedi% do if not errorlevel 1 (call set "osedition=%%a")
if%_wmic%EQU 1 set"chkedi=for /f "tokens=2 delims=="%%a in ('"wmic path %spp% where (ApplicationID='55c92734-d682-4d71-983e-d6ec3f16059f' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL) get LicenseFamily /VALUE"%nul6%')"
if%_wmic%EQU 1 set"chkedi=for /f "tokens=2 delims=="%%a in ('"wmic path %spp% where (ApplicationID='55c92734-d682-4d71-983e-d6ec3f16059f' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL) get LicenseFamily /VALUE"%nul6%')"
if%_wmic%EQU 0 set"chkedi=for /f "tokens=2 delims=="%%a in ('%psc%"(([WMISEARCHER]'SELECT LicenseFamily FROM %spp% WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f'' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL').Get()).LicenseFamily ^|%% {echo ('LicenseFamily='+$_)}"%nul6%')"
if%_wmic%EQU 0 set"chkedi=for /f "tokens=2 delims=="%%a in ('%psc%"(([WMISEARCHER]'SELECT LicenseFamily FROM %spp% WHERE ApplicationID=''55c92734-d682-4d71-983e-d6ec3f16059f'' AND LicenseDependsOn is NULL AND PartialProductKey IS NOT NULL').Get()).LicenseFamily ^|%% {echo ('LicenseFamily='+$_)}"%nul6%')"
ifnotdefinedosedition%chkedi% do if not errorlevel 1 (call set "osedition=%%a")
%chkedi% do if not errorlevel 1 (call set "osedition=%%a")
<palign="center">Open-source Windows and Office activator featuring HWID, Ohook, KMS38, and Online KMS activation methods, along with advanced troubleshooting.</p>
<palign="center">A Windows and Office activator using HWID / Ohook / KMS38 / Online KMS activation methods, with a focus on open-source code and fewer antivirus detections.</p>
<palign="center">
<ahref="https://discord.gg/tVFN4N84PP"><imgsrc="https://img.shields.io/badge/Chat%20with%20us%20on%20Discord--blue?style=social&logo=discord"alt="Chat with us without signup"title="Chat with us without signup"></a>
<ahref="https://www.reddit.com/r/MAS_Activator"><imgsrc="https://img.shields.io/badge/MAS%20on%20Reddit--orange?style=social&logo=reddit"alt="MAS on Reddit"title="MAS on Reddit"></a>
<ahref="https://twitter.com/massgravel"><imgsrc="https://img.shields.io/twitter/follow/massgravel"alt="Follow us on X"title="Follow us on X"></a>
</p>
<hr>
<hr>
@ -15,47 +21,32 @@
```
```
irm https://get.activated.win | iex
irm https://get.activated.win | iex
```
```
3. You will see the activation options. Choose (1) HWID for Windows activation. Choose (2) Ohook for Office activation.
or (deprecated, will be retired on Dec 31 2024, use above instead)
4. That's all.
<details>
<summary>More options</summary>
- Alternatively, you can use the following (It will be deprecated in the future.)
```
```
irm https://massgrave.dev/get | iex
irm https://massgrave.dev/get | iex
```
```
- The URL `get.activated.win` might be blocked by some DNS services because it is a new domain.
3. You will see the activation options. Choose [1] HWID for Windows activation. Choose [2] Ohook for Office activation.
4. That's all.
</details>
---
---
### Method 2 - Traditional (Windows 7 and later)
- On older Windows builds you may need to run the below command before,
- The Powershell method does not work on Windows 7. Use the Method 2 - Traditional instead.
- The URL get.activated.win may be blocked by some DNS services because it is a new domain.
<details>
### Method 2 - Traditional (Windows 7 and later)
<summary>Info</summary>
1. Download the file under the code button from [GitHub](https://github.com/massgravel/Microsoft-Activation-Scripts) or [Azure DevOps](https://dev.azure.com/massgrave/_git/Microsoft-Activation-Scripts) or [Self-hosted Git](https://git.activated.win/massgrave/Microsoft-Activation-Scripts)
1. Download the file under the code button from [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)
2. Right-click on the downloaded zip file and extract
2. Right-click on the downloaded zip file and extract
3. In the extracted folder, find the folder named `All-In-One-Version`
3. In the extracted folder, find the folder named `All-In-One-Version`
4. Run the file named `MAS_AIO.cmd`
4. Run the file named `MAS_AIO.cmd`
5. You will see the activation options, follow the on-screen instructions.
5. You will see the activation options, follow the on-screen instructions.
6. That's all.
6. That's all.
</details>
To run the scripts in unattended mode, check [here](https://massgrave.dev/command_line_switches)
---
> [!NOTE]
>
> - The IRM command in PowerShell downloads a script from a specified URL, and the IEX command executes it.
> - Always double-check the URL before executing the command and verify the source if manually downloading files.
> - Be cautious, as some spread malware disguised as MAS by using different URLs in the IRM command.
---
</br>
To run the scripts in unattended mode, check [here](https://massgrave.dev/command_line_switches).