GoTo (Jive)

I can get 3.33 to update to the latest 3.34…but anything older like 3.32.1 just fails…

image

during the run above it removed GoTo, if I re-run it will not install it back…

image.png

this computer now has no GoTo installed but yet it can’t seem to push the lateset 3.34…

has any one else had issue with Goto, need to deploy to 100+ of computers and can’t figure out a way to get this to work?

I believe I responded to you in the slack channel. That is a known issue that was created by GotoConnect. It won’t let you install the machine-wide version if there are per-user installs detected. It’s in their release notes.

apologies if I missed the slack chat, but think also good for there to be something here if someone else searches as well.

So is there a way to wipe out what is installed fully inorder for the machine wide to push out. Seems so odd that it was remove the per-user but still not able to push out the machine wide. Guess something is left behind to cause issues?

so question is, how can the machine wise first detect that there is a per-user install already on the computer. Do a remove and then proceed…

image

There isn’t an “easy” way to do installs or uninstall that sre per user–you pretty well have to be logged in to do the install. Sometimes you can get away with uninstallation using Invoke-HKCU if you know exactly which files and registry entries to remove “by hand” (aka, via script).

If you think you can gather that info, I’ll code it in. I’m sure you noticed, we use GotoConnect internally as well as for clients–fortunately, we’ve run into less than a handful of cases like this because we deployed GotoConnect via immy in the first place–so I didn’t make it a priority to try to axe it via code, since we ended up with like 4 machines (one of which was an internal laptop someone installed per user on) that we just hand uninstalled and pushed machine wide.

trying to figure out something, have a form created and also support ticket. will keep you posted.

Re: GoTo Machine Wide Install getting error "Per-u… - GoTo Community (logmein.com)

@DimitriRodis

so got sent this link

Sample scripts when deploying to multiple computers - GoTo Connect Support

it list the uninstall GoTo app per-user (not sure if the user needs to be signed in or not)

Uninstall GoTo app per-user installation (Windows)

This script can be used to uninstall the GoTo app for the current user. It works on per-user installations only. It should be executed from the user context for each user profile, for which the app needs to be uninstalled.

<#
.SYNOPSIS
This script checks if the GoTo app is installed for the current user and, if so, uninstalls it silently.

.DESCRIPTION
The script checks if the app is running and stops it if so.
It then reads the uninstall command line from the "QuietUninstallString" entry under the "Uninstall" key
for the GoTo app and executes it.
#>

$ErrorActionPreference = "Stop"

Function Stop-App {
    Param (
        [Parameter(Mandatory)][String]$AppName
    )

    # Close the app, if running.
    $AppProcesses = Get-Process -Name $AppName -ErrorAction SilentlyContinue
    if ($AppProcesses) {
        Write-Host "Stopping $AppName app..."
        Stop-Process -Name $AppName -Force
        # Wait a bit
        Start-Sleep -Seconds 5
    } else {
        Write-Host "$AppName app is not running"
    }

    # Check that the app is not still running
    $AppProcesses = Get-Process -Name $AppName -ErrorAction SilentlyContinue
    if ($AppProcesses) {
        Write-Host "$AppName app is still running, aborting"
        Exit 1
    }
}

# Make sure the GoTo app is not running
Stop-App -AppName GoTo

# Read the QuietUninstallString
try {
    $UninstStr = Get-ItemPropertyValue -LiteralPath "HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\b5746384-3503-4fbf-824a-0a42d1bd0639" -Name "QuietUninstallString"
} catch {
    $UninstStr = $null
}

if ($UninstStr) {
    # Optionally, preserve the user profile
    # $UninstStr = "$UninstStr --KeepProfile"

    Write-Host "Found GoTo app installed, uninstalling using command: $UninstStr"

    # Uninstall app
    $Process = Start-Process -FilePath "$Env:ComSpec" -ArgumentList "/c $UninstStr" -PassThru
    $Process.WaitForExit()
    Write-Host "Done"
} else {
    Write-Host "GoTo app is not installed"
}

@DimitriRodis

per my testing, I have a computer setup with the per-user install. Switched out of that users account and into the local admin. Ran the commands and all of them seem to be looking at the current user and don’t see GoTo install so therefore not helpful…

Any idea on how to wipe a per-user install out from a computer beside doing a full wipe a reload of Windows (which is just crazy). I have a computer that has multiple older profiles which as a quick fix I had to install the per-user install so the active user on the laptop could even use the app.

going to test on fully deleting the older profile and see if what clears out the per-user install.

so the test local account I had, once I deleted the local account and the user folder under C drive. I then was able to install the Machine-Wide installer.

So, question is, what is the best way to detect per user which accounts have the GoTo per user installed? That will at least give me the information I need to wipe it from the computer and then push out the machine wide installer…

Yes, we’d need to know the files and registry entries that exist in the user profiles to wipe them out using Invoke-HKCU

Here is what they had listed

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”


REM Delete the auto-start setting
REG DELETE HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v GoTo /f

Ok, go try to deploy it now and let me know what you see!

Failed, looks to be the same on the verify.

so the test machine I have, GoTo per-user is installed on a local user profile (no admin writes). I then switch over a local admin account and run the deployment. it fails and if I go and check the app is still installed on their test non-admin account. if being signed in as the test user it still failed as well.

if there a way that I can even just detect which computers have the per-user. right now, I don’t know which computers are the problem. Even if I had to with that list connect to each computer manually in order to wipe the per-user from this org then I can have immy just push out the machine-wide moving forward with no problems…

If the directions support gave you were correct, the script changes I made should have removed all of those user versions during an install OR uninstall of GoTo via immy.

Any errors in the session logs?

seems to be the same, it doesn’t understand that it failed because of the per-user installer, if I ran manually I get that error message. But the deployment here seems to think that it did installer but just can’t verify. If I look at the laptop it’s not actually installed.

It seems I am going to just have to do this manually, get a list of computers that fail to update the GoTo app and start there assuming those are per-user installs and tracking down the profile that has it starting by deleting old profiles first.

4/7/2023, 4:59:48 PM - Start Session
4/7/2023, 4:59:48 PM - Running [Get-PowerShellVersion] using script timeout [200sec] .
4/7/2023, 4:59:48 PM - Retrieving bulk software list.
4/7/2023, 4:59:49 PM - Retrieved 7 software.
4/7/2023, 4:59:50 PM - Getting installed version from Registry using upgrade code “147165dc-20d5-5870-9653-1a02a52d396f”.
4/7/2023, 4:59:50 PM - No version found
4/7/2023, 4:59:50 PM - Attempting to retrieve latest software version using the software’s dynamic versions script.
4/7/2023, 4:59:50 PM - Running [GoTo Dynamic Versions] using default timeout [1800sec] against Just-Tech.
4/7/2023, 4:59:50 PM - 1 version was returned from the dynamic versions script.
4/7/2023, 4:59:50 PM - The latest version is 3.35.1.
4/7/2023, 4:59:50 PM - No actions need to be skipped
4/7/2023, 4:59:50 PM - Sending detection email is disabled for this session. No email will be sent.
4/7/2023, 4:59:50 PM - Checking if computer needs a reboot before starting execution.
4/7/2023, 4:59:50 PM - Currently within business hours, and reboots are suppressed during business hours. Setting reboot preference to Suppress
4/7/2023, 4:59:50 PM - There is 1 action to run
4/7/2023, 4:59:50 PM - 1 version was returned from the dynamic versions script.
4/7/2023, 4:59:50 PM - Attempting to retrieve dynamic software version
4/7/2023, 4:59:50 PM - 1 version was returned from the dynamic versions script.
4/7/2023, 4:59:50 PM - Successfully retrieved dynamic software version 3.35.1
4/7/2023, 4:59:50 PM - Installer will be downloaded (if it isn’t already).
4/7/2023, 4:59:50 PM - Installer will be provided using dynamic versions.
4/7/2023, 4:59:50 PM - 1 version was returned from the dynamic versions script.
4/7/2023, 4:59:50 PM - Checking if $($env:SystemRoot)\Temp\ImmyBot\94bb01dd-9d29-4ce1-80d1-2dd0fc1cdac9\GoToSetupMachine-x64.msi is present.
4/7/2023, 4:59:50 PM - Running [Test-Path] using default timeout [120sec] .
4/7/2023, 4:59:50 PM - File exists.
4/7/2023, 4:59:50 PM - No hash provided. Skipping hash check.
4/7/2023, 4:59:50 PM - Starting BITS download of file GoToSetupMachine-x64.msi.
4/7/2023, 4:59:55 PM - BITS job created successfully
4/7/2023, 5:00:06 PM - BITS Transfer - GoToSetupMachine-x64.msi
4/7/2023, 5:00:08 PM - Installing version 3.35.1.
4/7/2023, 5:00:08 PM - Will use the default install script found on the software.
4/7/2023, 5:00:08 PM - Running [Install GotoConnect Machine Wide] using default timeout [1800sec] on TW-DELL-LAB.
4/7/2023, 5:00:13 PM - Reboot suppressed.
4/7/2023, 5:00:13 PM - Verifying the desired state is as expected
4/7/2023, 5:00:13 PM - Retrieving bulk software list.
4/7/2023, 5:00:14 PM - Retrieved 7 software.
4/7/2023, 5:00:14 PM - Getting installed version from Registry using upgrade code “147165dc-20d5-5870-9653-1a02a52d396f”.
4/7/2023, 5:00:14 PM - No version found
4/7/2023, 5:00:14 PM - No version of GoToConnect (64-bit Machine-wide) was found.
4/7/2023, 5:00:14 PM - Sending follow up email is disabled for this session. No email will be sent.

@Timothy_Wachenfeld , @Gav and I got this figured out and tested, should work now when trying to install OR uninstall.

@DimitriRodis are you having any issues with the Updating, non or our users are local admins and they get prompted to update but the app will stop working sometimes until they update.

Was thinking we could add this as part of the deployment to make it so automatic updates is turned off as a parameter

I can add this as a feature request later today as well.

What are the different types of MSIs? - GoTo Connect Support

Control automatic updates with MSI install property

Note: The information in this section requires prior knowledge on how automatic updates can be controlled. Please read How do I control automatic updates for IT admin deployments? first.

The MSIs support a property AUTOMATICUPDATES, which can be set during installation. Setting this property during MSI installation directly sets the AutomaticUpdates registry setting in the app registry key Software\LogMeInInc\GoTo, under HKLM or HKCU:

  • The MSI for per-machine installation sets the registry setting on the machine level (HKLM\Software\LogMeInInc\GoTo).
  • The MSI for per-user installation during user login sets the registry setting on the user level (HKCU\Software\LogMeInInc\GoTo).

Note: IT administrators can always use the Group Policy setting to configure the automatic updates and override the registry setting in the app registry key.