Overview
This article covers common issues related to uninstalling the Beyond Identity Platform Authenticator when it is installed in the user context. Uninstallation behavior differs depending on whether the system installer or the Windows Desktop Login installer was used, and these scenarios typically do not result in problematic states.
MSI Missing
If some tool has cleaned up the Windows system installer files and the .MSI installer is missing, and or other uninstaller files have been cleaned up, the uninstaller may be lost, and the wizard will ask for a specific file, like C:\Users\BI-Admin\AppData\Local\Temp\0f57dfdd-e546-4562-8206-c7616636b093.msi.
Download specific MSI
You can download the latest installer from Beyond Identity (byndid.com). However, if you need a specific version, we retain the old installers for some time. They can be downloaded by fabricating the URL as follows:
Replace the word latest with a version number, for example, 2.79.1
The same applies to MSI files.
Replace the word latest with a version number, for example, 2.79.1
Once you have acquired the correct MSI file, you can rename it to match what the uninstaller asks. For example, C:\Users\BI-Admin\AppData\Local\Temp\0f57dfdd-e546-4562-8206-c7616636b093.msi is the missing file; you can rename the BeyondIdentity-2.79.1.msi to 0f57dfdd-e546-4562-8206-c7616636b093.msi and point its location.
Microsoft Removal Tool
Microsoft has a tool to fix/repair uninstallation. The Program Install and Uninstall troubleshooter helps you automatically repair issues when you're blocked from installing or removing programs. It also fixes corrupted registry keys.
Fix problems that block programs from being installed or removed - Microsoft Support
Manual Removal
If pointing the uninstaller to a previously installed version's MSI file does not solve the issue, you may need to manually remove all the components before installing a new version.
Identify what to remove
Use the PowerShell command Get-WmiObject win32_product to get a list of installed software. Find the BI app GUID.
{6EDE4826-1964-464D-8601-C8507D3E1E4F}
Convert the GUID to an app identifier. For example, you can use the PowerShell function to do so:
Function Convert-GUIDtoPID {
[CmdletBinding()]
param(
#Accepts only GUID data type, to ensure Valid string format.
[Parameter(Mandatory=$True, ValueFromPipeline=$true,Position=0)]
[GUID]$GUID)
#Stripping off the brackets and the dashes from the GUID, leaving only alphanumerical chars.
$ProductIDChars = [regex]::replace($GUID, "[^a-zA-Z0-9]", "")
#1. Reversing the first 8 characters, next 4, next 4. Then for the latter half, reverse every two char.
$RearrangedCharIndex = 7,6,5,4,3,2,1,0,11,10,9,8,15,14,13,12,17,16,19,18,21,20,23,22,25,24,27,26,29,28,31,30
Return -join ($RearrangedCharIndex | ForEach-Object{$ProductIDChars[$_]})}{6EDE4826-1964-464D-8601-C8507D3E1E4F} -> 6284ede64691d46468108c05d7e3e1f4
Now that we have both, we can find files and folders, and registry keys.
Files and Folders
AppData\Roaming\BeyondIdentity
AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Beyond Identity
AppData\Roaming\Microsoft\Installer\{6EDE4826-1964-464D-8601-C8507D3E1E4F}
C:\Windows\Installer\5e0c27.msi
Note: The bolded part will change per every installation.
The file size will be an excellent hint to identify the correct MSI.Opening the file's properties and looking for the Details tab will confirm the file's identity.
C:\Windows\Installer\SourceHash{6EDE4826-1964-464D-8601-C8507D3E1E4F}
This file is without a file extension. Note that the GUID may be different per BI version.C:\Users\BI-Admin\AppData\Local\Temp\BeyondIdentitySetup.exe
Windows Registry
Computer\HKEY_CURRENT_USER\Software\BeyondIdentity
Computer\HKEY_CURRENT_USER\Software\Microsoft\Installer\Products\6284EDE64691D46468108C05D7E3E1F4
This is the reversed GUID for the installer.
Computer\HKEY_CURRENT_USER\Software\Microsoft\Installer\UpgradeCodes\BBDCA8E72F517DD4E95CF8D51263C212
The registry key has a value that points to the reversed GUID installer key.
Computer\HKEY_CLASSES_ROOT\beyond-identity-endpoint