SHA256
1
0

Initial commit

This commit is contained in:
2025-12-04 23:23:42 -05:00
commit 765f598313
58 changed files with 2736 additions and 0 deletions

View File

@@ -0,0 +1,63 @@
<#
.SYNOPSIS
Adds JRiver Media Center folders & processes to Windows Defender exclusions
.DESCRIPTION
powershell -ExecutionPolicy Bypass -File .\jriver-exclusions.ps1
#>
function Add-ItemExclusion {
param(
[string]$Item,
[ValidateSet('Path','Process')]$Type
)
try {
if ($Type -eq 'Path') {
Add-MpPreference -ExclusionPath $Item -ErrorAction Stop
} else {
Add-MpPreference -ExclusionProcess $Item -ErrorAction Stop
}
Write-Host "Added ${Type}: ${Item}"
}
catch {
Write-Warning "Skipped/failed ${Type}: ${Item} - $_"
}
}
Write-Host "Configuring JRiver Media Center (folders via wildcards, processes version 3050)"
# Folder exclusions (wildcards cover all files inside)
$folders = @(
'C:\Program Files\J River',
'C:\Program Files\J River\Media Center *',
"$Env:APPDATA\J River",
"$Env:APPDATA\J River\Media Center *"
)
# Process exclusions (explicit versions 3050)
$processes = @()
for ($v = 30; $v -le 50; $v++) {
$processes += "MC$v.exe"
$processes += "Media Center $v.exe"
}
# Add static processes that are version-independent
$processes += @('JRService.exe','JRWorker.exe','JRWeb.exe')
# Add exclusions
Write-Host "=== Adding folder exclusions ==="
$folders | ForEach-Object { Add-ItemExclusion -Item $_ -Type Path }
Write-Host "=== Adding process exclusions ==="
$processes | Sort-Object -Unique | ForEach-Object { Add-ItemExclusion -Item $_ -Type Process }
# Validation step
$pref = Get-MpPreference
Write-Host ''
Write-Host "=== Current Defender exclusions ==="
Write-Host "Paths:"
$pref.ExclusionPath | ForEach-Object { Write-Host " $_" }
Write-Host ''
Write-Host "Processes:"
$pref.ExclusionProcess | ForEach-Object { Write-Host " $_" }
Write-Host ''
Write-Host "=== Validation complete ==="