:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
ifexist"%SysPath%\wlms\wlms.exe"(
ifexist"%SysPath%\wlms\wlms.exe"(
if%winbuild%LSS 9200 (
echo Checking Eval WLMS Service [Found]
echo Checking Eval WLMS Service [Found]
) else (
call:dk_color%Red%"Checking Eval WLMS Service [Found]"
)
)
)
@ -1416,14 +1427,13 @@ for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT
%psc%"Get-WmiObject -Query 'SELECT Description FROM SoftwareLicensingProduct WHERE PartialProductKey IS NOT NULL AND LicenseDependsOn IS NULL' | Select-Object -Property Description"%nul2%| findstr /i "KMS_"%nul1%||(
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
ifexist"%SysPath%\wlms\wlms.exe"(
ifexist"%SysPath%\wlms\wlms.exe"(
if%winbuild%LSS 9200 (
echo Checking Eval WLMS Service [Found]
echo Checking Eval WLMS Service [Found]
) else (
call:dk_color%Red%"Checking Eval WLMS Service [Found]"
)
)
)
@ -1568,14 +1576,13 @@ for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT
%psc%"Get-WmiObject -Query 'SELECT Description FROM SoftwareLicensingProduct WHERE PartialProductKey IS NOT NULL AND LicenseDependsOn IS NULL' | Select-Object -Property Description"%nul2%| findstr /i "KMS_"%nul1%||(
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT LicenseFamily, Name FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND LicenseStatus=1 AND GracePeriodRemaining=0 AND PartialProductKey IS NOT NULL' | Where-Object { $_.Name %1 '*Office 15*' }).LicenseFamily" %nul6%')docallset"actiProds=%%a !actiProds!"
for/f"delims="%%a in('%psc% "Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { $_.LicenseFamily -notmatch 'Project' -and $_.LicenseFamily -notmatch 'Visio' } | Select-Object -ExpandProperty ID" %nul6%')docallset"_allactid=%%a !_allactid!"
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { $_.LicenseFamily -notmatch 'Project' -and $_.LicenseFamily -notmatch 'Visio' }).ID" %nul6%')docallset"_allactid=%%a !_allactid!"
for/f"delims="%%a in('%psc% "Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { '!_allactid!' -contains $_.ID -and ($_.LicenseFamily -match 'Project' -or $_.LicenseFamily -match 'Visio') } | Select-Object -ExpandProperty ID"%nul6%') do call set "_allactid=%%a !_allactid!"
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { $_.Description -match 'KMSCLIENT' -and ($_.LicenseFamily -match 'Project' -or $_.LicenseFamily -match 'Visio') }).ID"%nul6%') do call set "_allactid=%%a !_allactid!"
) else (
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT ID FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND LicenseStatus=1 AND GracePeriodRemaining=0 AND PartialProductKey IS NOT NULL').ID"%nul6%') do call set "_allactid=%%a !_allactid!"
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
ifexist"%SysPath%\wlms\wlms.exe"(
ifexist"%SysPath%\wlms\wlms.exe"(
if%winbuild%LSS 9200 (
echo Checking Eval WLMS Service [Found]
echo Checking Eval WLMS Service [Found]
) else (
call:dk_color%Red%"Checking Eval WLMS Service [Found]"
)
)
)
@ -1897,14 +1846,13 @@ for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT
%psc%"Get-WmiObject -Query 'SELECT Description FROM SoftwareLicensingProduct WHERE PartialProductKey IS NOT NULL AND LicenseDependsOn IS NULL' | Select-Object -Property Description"%nul2%| findstr /i "KMS_"%nul1%||(
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
for/f"delims="%%a in('%psc% "Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { $_.LicenseFamily -notmatch 'Project' -and $_.LicenseFamily -notmatch 'Visio' } | Select-Object -ExpandProperty ID" %nul6%')docallset"_allactid=%%a !_allactid!"
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { $_.LicenseFamily -notmatch 'Project' -and $_.LicenseFamily -notmatch 'Visio' }).ID" %nul6%')docallset"_allactid=%%a !_allactid!"
for/f"delims="%%a in('%psc% "Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { '!_allactid!' -contains $_.ID -and ($_.LicenseFamily -match 'Project' -or $_.LicenseFamily -match 'Visio') } | Select-Object -ExpandProperty ID"%nul6%') do call set "_allactid=%%a !_allactid!"
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT ID, Description, LicenseFamily FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND PartialProductKey IS NOT NULL' | Where-Object { $_.Description -match 'KMSCLIENT' -and ($_.LicenseFamily -match 'Project' -or $_.LicenseFamily -match 'Visio') }).ID"%nul6%') do call set "_allactid=%%a !_allactid!"
) else (
for/f"delims="%%a in('%psc% "(Get-WmiObject -Query 'SELECT ID FROM %spp% WHERE ApplicationID=''0ff1ce15-a989-479d-af46-f275c6370663'' AND LicenseStatus=1 AND GracePeriodRemaining=0 AND PartialProductKey IS NOT NULL').ID"%nul6%') do call set "_allactid=%%a !_allactid!"
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
:: This "WLMS" service was included in previous Eval editions (which were activable) to automatically shut down the system every hour after the evaluation period expired and prevent SPPSVC from stopping.
ifexist"%SysPath%\wlms\wlms.exe"(
ifexist"%SysPath%\wlms\wlms.exe"(
if%winbuild%LSS 9200 (
echo Checking Eval WLMS Service [Found]
echo Checking Eval WLMS Service [Found]
) else (
call:dk_color%Red%"Checking Eval WLMS Service [Found]"
)
)
)
@ -2998,14 +3000,13 @@ for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT
%psc%"Get-WmiObject -Query 'SELECT Description FROM SoftwareLicensingProduct WHERE PartialProductKey IS NOT NULL AND LicenseDependsOn IS NULL' | Select-Object -Property Description"%nul2%| findstr /i "KMS_"%nul1%||(
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
for/f"delims="%%a in('%psc% "(Get-ScheduledTask -TaskName 'SvcRestartTask' -TaskPath '\Microsoft\Windows\SoftwareProtectionPlatform\').State"%nul6%') do (set taskinfo=%%a)
$host.UI.WriteLine('Yellow', 'Black', "`r`nOhook for permanent Office activation is installed.`r`nYou can ignore the below mentioned Office activation status.")
Write-Host -back 'Black' -fore 'Yellow' 'Ohook for permanent Office activation is installed.'
& $noAll
Write-Host -back 'Black' -fore 'Yellow' 'You can ignore the below mentioned Office activation status.'
if (!$All.IsPresent){Write-Host}
}
}
#region WMI
#region WMI
function DetectID($strSLP, $strAppId, [ref]$strAppVar)
function DetectID($strSLP, $strAppId)
{
{
$fltr = "ApplicationID='$strAppId'"
$ppk = (" AND PartialProductKey <> NULL)", ")")[$All.IsPresent]
if (!$All.IsPresent){
$fltr = "SELECT ID FROM $strSLP WHERE (ApplicationID='$strAppId'"
$fltr = $fltr + " AND PartialProductKey <> NULL"
$clause = $fltr + $ppk
}
$sWmi = [wmisearcher]$clause
Get-WmiObject $strSLP ID -Filter $fltr -EA 0 | select ID -EA 0 | foreach {
$sWmi.Options.Rewindable = $false
$strAppVar.Value = 1
return ($sWmi.Get().Count -GT 0)
}
}
}
function GetID($strSLP, $strAppId, $strProperty = "ID")
if ($LicenseReason-EQ"0xC004F00F"){if($null-NE$cKmsClient){$LicenseMsg=$LicenseMsg+"(KMSlicenseexpired)."}else{$LicenseMsg=$LicenseMsg+"(hardwareoutoftolerance)."}}
if ($LicenseReason-EQ"0xC004F200"){$LicenseMsg=$LicenseMsg+"(non-genuine)."}
if ($LicenseReason-EQ"0xC004F200"){$LicenseMsg=$LicenseMsg+"(non-genuine)."}
if ($LicenseReason-EQ"0xC004F009"){$LicenseMsg=$LicenseMsg+"(gracetimeexpired)."}
if ($LicenseReason-EQ"0xC004F009"-Or$LicenseReason-EQ"0xC004F064"){$LicenseMsg=$LicenseMsg+"(gracetimeexpired)."}
}
}
if ($LicenseStatus-GT5-Or($LicenseStatus-GT4-And$NT5)){
if ($LicenseStatus-GT5-Or($LicenseStatus-GT4-And$NT5)){
$LicenseInf = "Unknown"
$LicenseInf = "Unknown"
@ -437,25 +491,61 @@ function GetResult($strSLP, $strSLS, $strID)
<palign="center">Open-source Windows and Office activator featuring HWID, Ohook, KMS38, and Online KMS activation methods, along with advanced troubleshooting.</p>
<palign="center">Open-source Windows and Office activator featuring HWID, Ohook, TSforge, KMS38, and Online KMS activation methods, along with advanced troubleshooting.</p>
<hr>
<hr>
@ -15,19 +15,12 @@
```
```
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.
Alternatively, you can use the following (It will be deprecated in the future.)
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>
---
---
@ -50,6 +43,14 @@ or
---
---
### Not working ❓
- If you are **unable to launch MAS** using the PowerShell method, please refer to **Method 2** listed above.
- If MAS is launched and the script shows any errors, check for any troubleshooting steps mentioned in blue color and try to follow those.
- If you have any issues, please feel free to reach out to us [here](https://massgrave.dev/troubleshoot).
---
> [!NOTE]
> [!NOTE]
>
>
> - The IRM command in PowerShell downloads a script from a specified URL, and the IEX command executes it.
> - The IRM command in PowerShell downloads a script from a specified URL, and the IEX command executes it.
@ -61,8 +62,8 @@ or
To run the scripts in unattended mode, check [here](https://massgrave.dev/command_line_switches).
To run the scripts in unattended mode, check [here](https://massgrave.dev/command_line_switches).