Browse Source

Merge pull request #431 from alan-null/issue/430

#430 | DefenderServices check (edge-cases)
pull/437/head
Dmitry Nefedov 2 years ago
committed by GitHub
parent
commit
547b14d010
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 21
      src/Sophia_Script_for_Windows_10/Module/Sophia.psm1
  2. 21
      src/Sophia_Script_for_Windows_10_LTSC_2019/Module/Sophia.psm1
  3. 21
      src/Sophia_Script_for_Windows_10_LTSC_2021/Module/Sophia.psm1
  4. 21
      src/Sophia_Script_for_Windows_10_PowerShell_7/Module/Sophia.psm1
  5. 21
      src/Sophia_Script_for_Windows_11/Module/Sophia.psm1
  6. 21
      src/Sophia_Script_for_Windows_11_PowerShell_7/Module/Sophia.psm1

21
src/Sophia_Script_for_Windows_10/Module/Sophia.psm1

@ -289,24 +289,17 @@ function Checks
} }
# Checking services # Checking services
@("Windefend", "SecurityHealthService", "wscsvc") | ForEach-Object -Process { try
if ($null -eq (Get-Service -Name $_ -ErrorAction Ignore))
{
$Localization.WindowsBroken
exit
}
else
{
if ((Get-Service -Name $_).Status -eq "running")
{ {
$Script:DefenderServices = $true $Services = Get-Service -Name Windefend, SecurityHealthService, wscsvc -ErrorAction Stop
} }
else catch [Microsoft.PowerShell.Commands.ServiceCommandException]
{ {
$Script:DefenderServices = $false $Localization.WindowsBroken
} exit
}
} }
[array]$notRunning = $Services | Where-Object -FilterScript {$_.Status -ne "running"}
$Script:DefenderServices = $notRunning.Count -eq 0
# Specifies whether Antispyware protection is enabled # Specifies whether Antispyware protection is enabled
if ((Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows nt\CurrentVersion" -Name EditionID) -ne "EnterpriseG") if ((Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows nt\CurrentVersion" -Name EditionID) -ne "EnterpriseG")

21
src/Sophia_Script_for_Windows_10_LTSC_2019/Module/Sophia.psm1

@ -271,24 +271,17 @@ function Checks
} }
# Checking services # Checking services
@("Windefend", "SecurityHealthService", "wscsvc") | ForEach-Object -Process { try
if ($null -eq (Get-Service -Name $_ -ErrorAction Ignore))
{
$Localization.WindowsBroken
exit
}
else
{
if ((Get-Service -Name $_).Status -eq "running")
{ {
$Script:DefenderServices = $true $Services = Get-Service -Name Windefend, SecurityHealthService, wscsvc -ErrorAction Stop
} }
else catch [Microsoft.PowerShell.Commands.ServiceCommandException]
{ {
$Script:DefenderServices = $false $Localization.WindowsBroken
} exit
}
} }
[array]$notRunning = $Services | Where-Object -FilterScript {$_.Status -ne "running"}
$Script:DefenderServices = $notRunning.Count -eq 0
# Specifies whether Antispyware protection is enabled # Specifies whether Antispyware protection is enabled
if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled) if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled)

21
src/Sophia_Script_for_Windows_10_LTSC_2021/Module/Sophia.psm1

@ -271,24 +271,17 @@ function Checks
} }
# Checking services # Checking services
@("Windefend", "SecurityHealthService", "wscsvc") | ForEach-Object -Process { try
if ($null -eq (Get-Service -Name $_ -ErrorAction Ignore))
{
$Localization.WindowsBroken
exit
}
else
{
if ((Get-Service -Name $_).Status -eq "running")
{ {
$Script:DefenderServices = $true $Services = Get-Service -Name Windefend, SecurityHealthService, wscsvc -ErrorAction Stop
} }
else catch [Microsoft.PowerShell.Commands.ServiceCommandException]
{ {
$Script:DefenderServices = $false $Localization.WindowsBroken
} exit
}
} }
[array]$notRunning = $Services | Where-Object -FilterScript {$_.Status -ne "running"}
$Script:DefenderServices = $notRunning.Count -eq 0
# Specifies whether Antispyware protection is enabled # Specifies whether Antispyware protection is enabled
if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled) if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled)

21
src/Sophia_Script_for_Windows_10_PowerShell_7/Module/Sophia.psm1

@ -289,24 +289,17 @@ function Checks
} }
# Checking services # Checking services
@("Windefend", "SecurityHealthService", "wscsvc") | ForEach-Object -Process { try
if ($null -eq (Get-Service -Name $_ -ErrorAction Ignore))
{
$Localization.WindowsBroken
exit
}
else
{
if ((Get-Service -Name $_).Status -eq "running")
{ {
$Script:DefenderServices = $true $Services = Get-Service -Name Windefend, SecurityHealthService, wscsvc -ErrorAction Stop
} }
else catch [Microsoft.PowerShell.Commands.ServiceCommandException]
{ {
$Script:DefenderServices = $false $Localization.WindowsBroken
} exit
}
} }
[array]$notRunning = $Services | Where-Object -FilterScript {$_.Status -ne "running"}
$Script:DefenderServices = $notRunning.Count -eq 0
# Specifies whether Antispyware protection is enabled # Specifies whether Antispyware protection is enabled
if ((Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows nt\CurrentVersion" -Name EditionID) -ne "EnterpriseG") if ((Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows nt\CurrentVersion" -Name EditionID) -ne "EnterpriseG")

21
src/Sophia_Script_for_Windows_11/Module/Sophia.psm1

@ -298,24 +298,17 @@ function Checks
} }
# Checking services # Checking services
@("Windefend", "SecurityHealthService", "wscsvc") | ForEach-Object -Process { try
if ($null -eq (Get-Service -Name $_ -ErrorAction Ignore))
{
$Localization.WindowsBroken
exit
}
else
{
if ((Get-Service -Name $_).Status -eq "running")
{ {
$Script:DefenderServices = $true $Services = Get-Service -Name Windefend, SecurityHealthService, wscsvc -ErrorAction Stop
} }
else catch [Microsoft.PowerShell.Commands.ServiceCommandException]
{ {
$Script:DefenderServices = $false $Localization.WindowsBroken
} exit
}
} }
[array]$notRunning = $Services | Where-Object -FilterScript {$_.Status -ne "running"}
$Script:DefenderServices = $notRunning.Count -eq 0
# Specifies whether Antispyware protection is enabled # Specifies whether Antispyware protection is enabled
if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled) if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled)

21
src/Sophia_Script_for_Windows_11_PowerShell_7/Module/Sophia.psm1

@ -298,24 +298,17 @@ function Checks
} }
# Checking services # Checking services
@("Windefend", "SecurityHealthService", "wscsvc") | ForEach-Object -Process { try
if ($null -eq (Get-Service -Name $_ -ErrorAction Ignore))
{
$Localization.WindowsBroken
exit
}
else
{
if ((Get-Service -Name $_).Status -eq "running")
{ {
$Script:DefenderServices = $true $Services = Get-Service -Name Windefend, SecurityHealthService, wscsvc -ErrorAction Stop
} }
else catch [Microsoft.PowerShell.Commands.ServiceCommandException]
{ {
$Script:DefenderServices = $false $Localization.WindowsBroken
} exit
}
} }
[array]$notRunning = $Services | Where-Object -FilterScript {$_.Status -ne "running"}
$Script:DefenderServices = $notRunning.Count -eq 0
# Specifies whether Antispyware protection is enabled # Specifies whether Antispyware protection is enabled
if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled) if ((Get-CimInstance -ClassName MSFT_MpComputerStatus -Namespace root/microsoft/windows/defender).AntispywareEnabled)

Loading…
Cancel
Save