From e24fb6d1392087f44d11841eb083da38111ac72b Mon Sep 17 00:00:00 2001 From: WindowsAddict Date: Sat, 4 Jan 2025 04:09:59 +0530 Subject: [PATCH] Add LanguageMode check and improve CheckFile --- index.html | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/index.html b/index.html index af346bb..283c1f1 100644 --- a/index.html +++ b/index.html @@ -1,4 +1,11 @@ -## This script is hosted on https://get.activated.win for https://massgrave.dev
+# This script is hosted on https://get.activated.win for https://massgrave.dev
+
+if ($ExecutionContext.SessionState.LanguageMode.value__ -ne 0) {
+    $ExecutionContext.SessionState.LanguageMode
+    Write-Host "Windows PowerShell is not running in Full Language Mode."
+    Write-Host "Help - https://massgrave.dev/fix_powershell" -ForegroundColor White -BackgroundColor Blue
+    return
+}
 
 function Check3rdAV {
     $avList = Get-CimInstance -Namespace root\SecurityCenter2 -Class AntiVirusProduct | Where-Object { $_.displayName -notlike '*windows*' } | Select-Object -ExpandProperty displayName
@@ -8,6 +15,16 @@ function Check3rdAV {
     }
 }
 
+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 - https://massgrave.dev/troubleshoot" -ForegroundColor White -BackgroundColor Blue
+        throw 
+    } 
+}
+
 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
 $URLs = @(
     'https://raw.githubusercontent.com/massgravel/Microsoft-Activation-Scripts/37ec96504a2983a5801c43e975ab78c8f9315d2a/MAS/All-In-One-Version-KL/MAS_AIO.cmd',
@@ -52,16 +69,11 @@ $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"
 Start-Process -FilePath $env:ComSpec -ArgumentList "/c """"$FilePath"" $args""" -Wait
-
-if (-not (Test-Path -Path $FilePath)) {
-    Check3rdAV
-    Write-Host "Failed to create MAS file in temp folder, aborting!"
-    Write-Host "Help - https://massgrave.dev/troubleshoot" -ForegroundColor White -BackgroundColor Blue
-    return
-}
+CheckFile $FilePath
 
 $FilePaths = @("$env:SystemRoot\Temp\MAS*.cmd", "$env:USERPROFILE\AppData\Local\Temp\MAS*.cmd")
 foreach ($FilePath in $FilePaths) { Get-Item $FilePath | Remove-Item }