WMI in action! I was running SSMS 2016 and it locked up on me. So while I waited for it to become responsive I started up SSMS 2014. Still locked, but which do I kill in taskman? (The easy answer, is, of course: change the open query and then look in Applications, not Processes). I didn't think of that, so used WMI. You could also get fancy and figure out which is the oldest instance of SSMS and do it that way.
Pretty simple: Tell it the path (which is 130 for SSMS 2016), and kill that.
$processes = Get-WmiObject -query "select * from Win32_Process where executablepath like '%130%ssms%'"
foreach ($process in $processes) {
$returnval = $process.terminate()
$processid = $process.handle
if($returnval.returnvalue -eq 0) {
write-host "The process $ProcessName `($processid`) terminated successfully"
}
else {
write-host "The process $ProcessName `($processid`) termination has some problems"
}
}
Friday, July 8, 2016
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment