Fix MSI temp path and constrain exe search to matching install directories
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
97701505c3
commit
ee0fc307bb
@@ -24,7 +24,7 @@ $rustdeskService = 'ScoutIT-RemoteSupport'
|
||||
|
||||
# ── Helper: Install RustDesk ──────────────────────────────────────────────────
|
||||
function Install-RustDesk {
|
||||
$msiPath = "$env:TMP\$rustdeskMsi"
|
||||
$msiPath = "$env:SystemRoot\Temp\$rustdeskMsi"
|
||||
|
||||
# Download
|
||||
Write-Host "Downloading ScoutIT Remote Support client..."
|
||||
@@ -76,11 +76,12 @@ function Install-RustDesk {
|
||||
}
|
||||
}
|
||||
|
||||
# Second try: search Program Files and Program Files (x86)
|
||||
# Second try: search only within directories whose name matches expected install folder
|
||||
if (-not $rustdeskExe) {
|
||||
Write-Host "Searching for RustDesk exe in Program Files..."
|
||||
$found = Get-ChildItem 'C:\Program Files', 'C:\Program Files (x86)' -Recurse -Filter '*.exe' -ErrorAction SilentlyContinue |
|
||||
Write-Host "Searching for RustDesk exe in matching install directories..."
|
||||
$found = Get-ChildItem 'C:\Program Files', 'C:\Program Files (x86)' -Directory -ErrorAction SilentlyContinue |
|
||||
Where-Object { $_.Name -match 'rustdesk|scoutit|remotesupport' } |
|
||||
ForEach-Object { Get-ChildItem $_.FullName -Filter '*.exe' -ErrorAction SilentlyContinue } |
|
||||
Select-Object -First 1
|
||||
if ($found) {
|
||||
$rustdeskExe = $found.FullName
|
||||
|
||||
@@ -17,7 +17,7 @@ if ($null -ne $svcCheck) {
|
||||
}
|
||||
|
||||
# ── Download ──────────────────────────────────────────────────────────────────
|
||||
$msiPath = "$env:TMP\$rustdeskMsi"
|
||||
$msiPath = "$env:SystemRoot\Temp\$rustdeskMsi"
|
||||
Write-Host "Downloading ScoutIT Remote Support client..."
|
||||
Try {
|
||||
Invoke-WebRequest -Uri $rustdeskDl -OutFile $msiPath
|
||||
@@ -67,11 +67,12 @@ foreach ($key in $uninstallKeys) {
|
||||
}
|
||||
}
|
||||
|
||||
# Second try: search Program Files and Program Files (x86)
|
||||
# Second try: search only within directories whose name matches expected install folder
|
||||
if (-not $rustdeskExe) {
|
||||
Write-Host "Searching for RustDesk exe in Program Files..."
|
||||
$found = Get-ChildItem 'C:\Program Files', 'C:\Program Files (x86)' -Recurse -Filter '*.exe' -ErrorAction SilentlyContinue |
|
||||
Write-Host "Searching for RustDesk exe in matching install directories..."
|
||||
$found = Get-ChildItem 'C:\Program Files', 'C:\Program Files (x86)' -Directory -ErrorAction SilentlyContinue |
|
||||
Where-Object { $_.Name -match 'rustdesk|scoutit|remotesupport' } |
|
||||
ForEach-Object { Get-ChildItem $_.FullName -Filter '*.exe' -ErrorAction SilentlyContinue } |
|
||||
Select-Object -First 1
|
||||
if ($found) {
|
||||
$rustdeskExe = $found.FullName
|
||||
|
||||
Reference in New Issue
Block a user