The ParityHostAgentInstall_TIMESTAMP.log includes errors such as:
B9_UPGRADING_BLOCKED = {PRODUCT GUID}
(FAILURE) Agent cannot be installed per-user.
Product: Bit9 Agent -- Error 1714.The older version of Bit9 Agent cannot be removed. Contact your technical support group. System Error 1612.
Environment
App Control Windows Agent: 8.7.x and higher
App Control Console: All Supported Versions
Cause
One of the previous versions of the Agent installer MSI files was not persisted on the system.
Typically such files are cached by the Windows installer in "C:\Windows\Installer\" folder or when deployed via SCCM in the "Ccmcache" folder.
When deploying via Intune or SCCM one must ensure that the option to persist the installation media is enabled.
If the previous installation media was removed, on the next agent upgrade attempt, the Windows Installer will only partially remove the previous agent files and registry keys which will result in a corruption and inability to upgrade successfully going forward.
Resolution
Verify the Presence of Leftover Registry Keys
Confirm the file version of the Agent that is installed via CMD:
"C:\Program Files (x86)\Bit9\Parity Agent\DasCLI.exe" status
Example output:
Version Information
CLI: 8.7.8.787 6/17/2022 5:00:17 PM
Agent: 8.7.8.787 6/17/2022 5:00:17 PM
Kernel: 8.7.8.787 6/17/2022 5:00:17 PM
Navigate to the following Registry Key, or run this in CMD:
The Registry Key should contain a single Package Code, matching the Agent version installed on the system. Example:
GOOD registry shows only the Package Code for the currently installed Agent 8.7.8: C56DE352F399D2544A140184D1CFDFA9
BAD registry shows multiple Package Codes for the current, and older agent versions
WARNING: If none of the Package Codes in this registry path matches the current Agent version listed in "dascli status" then the Agent registry keys have been corrupted
Although the agent is fully operational, it will not be possible to upgrade it until it has been cleaned using the Agent Uninstall Tool ONLY.
Cleanup the Registry Keys
WARNING: Do not delete the Registry Keys for the currently installed Agent version, as this will corrupt it, and the Uninstall Tool will be required.
A PowerShell script to assist in the automated cleanup of these registry entries is attached to this article.
It will verify the current Agent version, and delete registry entries for any unrelated version.
The script should be tested only on a small subset of machines first.
After downloading the file to the machine it may be required to: Right click the file > Properties > Unblock.
The script is designed to create a CSV log entry of deleted entries on the desktop by default, this path is customizable by editing the script first in a text editor.
This is a workaround to the preventable, core issue of the installer file not being persisted on the endpoint.
This script will require PowerShell version 2.0 or newer (Server 2008 R2/Windows 7 or higher).
Additional Information
If the Agent upgrade was forced through by temporarily disabling Tamper Protection on the endpoint a partial upgrade could occur that will require the Agent Uninstall Utility.
Please check to be sure the SCCM Package is properly configured to persist the files on the endpoint, as outlined in the Agent Installation Guide.
A manual install failing with an error similar to "Upgrade from <VERSION> to <VERSION> is not allowed" can be caused by these registry keys being left behind.