Ejemplos de scripts al implementar en varios ordenadores
A continuación, se muestran varios scripts que los administradores de TI pueden encontrar útiles para gestionar la aplicación GoTo. Estos scripts de ejemplo simplifican las tareas que los instaladores, las políticas de grupo u otros no realizan automáticamente. Los administradores de TI pueden integrarlos manualmente en sus scripts si deben realizar estas tareas.
Desinstalación GoTo app instalación por usuario (Windows)
Este script se puede usar para desinstalar el GoTo app para el usuario actual. Funciona solo en instalaciones por usuario. Debe ejecutarse desde el contexto de usuario de cada perfil de usuario para el que debe desinstalar la aplicación.
<# .SYNOPSIS Esto script comprueba si la GoTo aplicación está instalada para el usuario actual y, en caso afirmativo, la desinstala silenciosamente. .DESCRIPTION El script comprueba si la aplicación se está ejecutando y la detiene en caso afirmativo. A continuación, lee la línea de comandos de desinstalación de la entrada "QuietUninstallString" de la clave "Desinstalar" de la GoTo aplicación y la ejecuta. #> $ErrorActionPreference = "Stop" Function Stop-App { Param ( [Parametro(Obligatorio)][String]$AppName ) #Cierre la aplicación, si se está ejecutando. $ProcesosDeApp = Get-Process -Name $NombreDeApp -ErrorAction SilentlyContinue if ($ProcesosDeApp) { Write-Host "Deteniendo $NombreDeApp..." Stop-Process -Name $AppName -Force # Espere un poco Start-Sleep -Seconds 5 } else { Write-Host "La aplicación $AppName no se está ejecutando" } # Compruebe que la aplicación no sigue en ejecución $AppProcesos = Get-Process -Nombre $AppName -ErrorAction SilentlyContinue if ($AppProcesos) { Write-Host "La aplicación $AppName sigue en ejecución, abortando" Exit 1 } } # Asegúrese de que la GoTo aplicación no se está ejecutando Stop-App -AppName GoTo # Lea el QuietUninstallString try { $UninstStr = Get-ItemPropertyValue -LiteralPath "HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\b5746384-3503-4fbf-824a-0a42d1bd0639" -Name "QuietUninstallString" } catch { $UninstStr = $null } if ($UninstStr) { # Opcionalmente, conserve el perfil de usuario # $UninstStr = "$UninstStr --KeepProfile" Write-Host "Encontrado GoTo aplicación instalada, desinstalando mediante comando: $UninstStr" # Desinstalar app $Process = Start-Process -FilePath "$Env:ComSpec" -ArgumentList "/c $UninstStr" -PassThru $Process.WaitForExit() Write-Host "Hecho" } else { Write-Host "GoTo la aplicación no está instalada" }
Borrar los perfiles de usuarios (Windows y Mac)
Este script puede usarse para limpiar el perfil de usuario utilizado por la GoTo app una vez desinstalado la aplicación. Los elementos de los perfiles de usuario para limpiar son los mismos, independientemente de si GoTo app se ha instalado por máquina o por usuario, pero normalmente este script es útil para limpiar después de desinstalar la desinstalación por equipo. Esto se debe a que desinstala el MSI para la instalación por equipo no elimina los perfiles de usuario, mientras que la desinstalación por usuario borra el perfil de usuario como parte de la desinstalación.
El script debe ejecutarse desde el contexto del usuario de cada usuario para el que debe limpiarse el perfil.
Windows
REM Delete the app registry key REG DELETE HKEY_CURRENT_USER\Software\LogMeInInc\GoTo /f REM Delete the auto-start setting REG DELETE HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v GoTo /f REM Delete the app data folder RMDIR /S /Q "%APPDATA%\GoTo"
Mac
# Elimine el plist rm -f ~/Library/Preferences/com.logmein.goto.plist # Elimine la carpeta de datos de la aplicación rm -rf ~/Library/Application\ Support/GoTo
Configurar o quitar el ajuste de inicio automático (Windows )
Estos scripts se pueden usar para configurar o quitar el ajuste de inicio automático que se utiliza para iniciar automáticamente la GoTo app cuando el usuario inicia sesión. El script funciona de las instalaciones por equipo y de la aplicación por usuario, pero el registro de inicio automático se configura en el registro de usuarios (HKCU).
El script debe ejecutarse desde el contexto del usuario de cada perfil de usuario, para el cual debe establecerse o eliminar el ajuste de inicio automático.
Para establecer la configuración del registro de inicio automático:
<# .SYNOPSIS Esto script establece la configuración del registro de inicio automático utilizada para iniciar automáticamente la aplicación GoTo aplicación cuando el usuario inicie sesión. .DESCRIPTION El script comprueba la carpeta de instalación de la aplicación, tanto en HKLM como en HKCU (funciona tanto para instalaciones de aplicaciones por máquina como por usuario). A continuación, establece una entrada "GoTo" bajo la tecla "Ejecutar" para el usuario actual. #> $ErrorActionPreference = "Stop" # Leer el archivo InstallLocation. Try both HKLM and HKCU try { $instLoc = Get-ItemPropertyValue -LiteralPath "HKLM:\Software\LogMeInInc\GoTo\ElectronInstallDetails" -Name "InstallLocation" } catch { try { $instLoc = Get-ItemPropertyValue -LiteralPath "HKCU:\Software\LogMeInInc\GoTo\ElectronInstallDetails" -Name "InstallLocation" } catch { $instLoc = $null } } if ($instLoc -ne $null) { Write-Host "Found GoTo app installed at: $instLoc" # Set the auto-start registry setting $regValue = Join-Path -Path $instLoc -ChildPath "GoTo.exe" -Resolve Write-Host "Setting auto-start registry setting to value: $regValue" Set-ItemProperty -LiteralPath "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "GoTo" -Value $regValue -Type String Write-Host "Done" } else { Write-Host "GoTo app is not installed" }
Para quitar la configuración del registro de inicio automático:
REM Delete the auto-start setting REG DELETE HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v GoTo /f
Desinstalación GoTo MSI versiones 3.17 e inferiores (Windows)
Este script se puede usar para desinstalar el GoTo MSI las versiones 3.17 e inferioresque están obsoletos.
Se encuentra y desinstala los MSI de la máquina y de los usuarios, pero hay diferentes requisitos para el contexto de ejecución de este script para ambos tipos de MSI. Lea la descripción del script para obtener más información.
<# .SYNOPSIS Esto script desinstala todas las MSI versiones de GoTo/GoToConnect de la versión 3.17 e inferiores. .DESCRIPTION El script comprueba si la aplicación se está ejecutando y la detiene en caso afirmativo. A continuación, comprueba si hay MSI paquetes con el UpgradeCode utilizado por las MSI las versiones 3.17 e inferiores y los desinstala. La máquina MSI requiere privilegios de administrador para ser desinstalada, así que ejecute este comando script desde una cuenta de administrador para desinstalar la Máquina MSI. Dado que el Usuario MSI se instala en el nivel de usuario, este script debe ejecutarse en el contexto de usuario que tiene el Usuario MSI instalado. #> $ErrorActionPreference = "Stop" # Este es el UpgradeCode para: # - MSI versiones 3.17 e inferiores, tanto el de Usuario como el de Máquina MSI instaladores # - MSI versiones 3.18 y superiores, sólo el MSI para la instalación por máquina $UpgradeCode = "{147165DC-20D5-5870-9653-1A02A52D396F}" # MSI Las versiones inferiores a ésta serán desinstaladas $UninstallVersionsBelow = [System.Version]::Parse("3.18") Function Stop-App { Param ( [Parameter(Mandatory)][String]$AppName ) # Cierra la aplicación, si se está ejecutando. $ProcesosDeApp = Get-Process -Name $NombreDeApp -ErrorAction SilentlyContinue if ($ProcesosDeApp) { Write-Host "Deteniendo $NombreDeApp..." Stop-Process -Name $AppName -Force # Espere un poco Start-Sleep -Seconds 5 } else { Write-Host "La aplicación $AppName no se está ejecutando" } # Compruebe que la aplicación no sigue en ejecución $AppProcesos = Get-Process -Nombre $AppName -ErrorAction SilentlyContinue if ($AppProcesos) { Write-Host "La aplicación $AppName sigue en ejecución, abortando" Exit 1 } } # La aplicación se llamaba GoToConexión en versiones anteriores. Asegúrese de que tanto el GoTo y GoToaplicaciones de conexión no se están ejecutando Stop-App -AppName GoTo Stop-App -AppName GoToConnect $AllProps = Get-CimInstance -Class Win32_Property # Obtenga una matriz de códigos de producto con el código de actualización correspondiente $ProductCodes = @(($AllProps | Where-Object {$_.Property -eq "UpgradeCode" -y $_.Value -eq $UpgradeCode}).ProductCode) if (!$ProductCodes) { Write-Host "No installed MSIs encontrados con el UpgradeCode $UpgradeCode" especificado } else { Write-Host "Encontrados $($ProductCodes.Length) MSI(s) instalados con el UpgradeCode $UpgradeCode`n especificado" foreach ($ProductCode in $ProductCodes) { # Obtener las ProductName y ProductVersion del ProductCode actual $ProductName = ($AllProps | Where-Object {$_.Propiedad -eq "ProductName" -y $_.CódigoProducto -eq $CódigoProducto}).Valor $ProductVersion = ($AllProps | Where-Object {$_.Propiedad -eq "ProductVersion" -y $_.CódigoProducto -eq $CódigoProducto}).Valor Write-Host "ProductName: $ProductName ProductVersion: $ProductVersion CódigoProducto: $CódigoProducto" try { $ProductVersionParseado = [System.Version]::Parse($ProductVersion) if ($ProductVersionParsed -lt $UninstallVersionsBelow) { Write-Host "`tProductVersion por debajo del umbral, desinstalando..." # Iniciar msiexec.exe para desinstalar el ProductCode actual $MSIArguments = @( "/x" $ProductCode "/qn" "/norestart" ) $Process = Start-Process "msiexec.exe" -ArgumentList $MSIArguments -Wait -NoNewWindow -PassThru # Compruebe el código de salida de msiexec.exe if ($Process.ExitCode -eq 0) { Write-Host "`tCompleted." } else { Write-Host "`tFalló la desinstalación - msiexec.exe código de salida $($Process.ExitCode)." } } else { Write-Host "`tProductVersion demasiado alto, no desinstalar" } } catch { Write-Host "`tNo se ha podido analizar ProductVersion '$ProductVersion'" } } }