$ErrorActionPreference = 'SilentlyContinue' Write-Output "=== Locate v10 installer (all user Downloads + common) ===" $roots = @("C:\Users\kristinsteen\Downloads","C:\Users\Public\Downloads") Get-ChildItem 'C:\Users\*\Downloads' -Filter 'DattoWorkplace*' -ErrorAction SilentlyContinue | ForEach-Object { Write-Output (" {0} ({1:N1} MB, modified {2})" -f $_.FullName, ($_.Length/1MB), $_.LastWriteTime) } Get-ChildItem 'C:\Users\*\Downloads' -Filter '*Workplace*Setup*' -ErrorAction SilentlyContinue | ForEach-Object { Write-Output (" {0} ({1:N1} MB, modified {2})" -f $_.FullName, ($_.Length/1MB), $_.LastWriteTime) } Write-Output "" Write-Output "=== Datto Workplace Desktop uninstall strings ===" $paths = @('HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*','HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*') foreach ($p in $paths) { Get-ItemProperty $p -ErrorAction SilentlyContinue | Where-Object { $_.DisplayName -like '*Workplace*' } | ForEach-Object { Write-Output (" Name: {0} v{1}" -f $_.DisplayName, $_.DisplayVersion) Write-Output (" Key: {0}" -f $_.PSChildName) Write-Output (" Uninstall: {0}" -f $_.UninstallString) Write-Output (" QuietUninstall: {0}" -f $_.QuietUninstallString) } } Write-Output "" Write-Output "=== Datto Workplace Desktop process/service state ===" Get-Process WorkplaceDesktop -ErrorAction SilentlyContinue | ForEach-Object { Write-Output (" proc WorkplaceDesktop pid {0}" -f $_.Id) } Get-Service -ErrorAction SilentlyContinue | Where-Object { $_.DisplayName -like '*Workplace*' } | ForEach-Object { Write-Output (" svc {0} [{1}]" -f $_.Name, $_.Status) } Write-Output "=== END ==="