-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtaskKillWindowsInstaller.ps1
More file actions
43 lines (28 loc) · 1.44 KB
/
taskKillWindowsInstaller.ps1
File metadata and controls
43 lines (28 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#Copyright 2025 Esri
#Licensed under the Apache License Version 2.0 (the "License"); you may not use this file except in compliance with the License.
#You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
#Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
#Adrien Hafner
#This script checks to see if there is a hung Windows Installer process running on the server specified.
#If a Windows Installer process is found running, the script kills it to help prepare for the next invoke attempt after failure.
#Replace the value of the serverName variable with the machine you'd like to check/kill Windows Installer on.
$serverName = "server1"
# Establish remote session
Enter-PSSession -ComputerName $serverName
# Check if process is running
Invoke-Command -ComputerName $serverName -ScriptBlock {
$processName = "msiserver"
if (Get-Service -Name $processName -ErrorAction SilentlyContinue) {
Write-Output "$processName is running. Attempting to stop..."
# Stop the process
Stop-Service -Name $processName -Force
Write-Output "$processName stopped."
} else {
Write-Output "$processName is not running."
}
# Exit remote session
Exit-PSSession
}