+2
Under Review

Remote System Diagnostics extension not displaying complete list of installed software

Dont Spam Me! 7 years ago updated by Brian Klish 5 years ago 2

In version 1.4 of the Remote Systems Diagnostics extension, the list of installed software is incomplete since the PowerShell method (Win32_Product) used for obtaining that type of information only takes into consideration applications installed with the Microsoft Installer. Since a lot of products use other installers (including any of the products by Piriform and Auslogics), it would be best to use a different approach that provides for a full listing of all installed applications, independent of the installer used.


One such approach is described at http://windowsitpro.com/powershell/what-applications-are-installed-computers-your-network and includes a corresponding sample script free of charge.


Granted, the output of that script would have to be reformatted to match the style of that of the current version of the extension, but that looks like it would be reasonably straight-forward to achieve.


Either way, this would greatly improve the usability of the "Software" portion of this extension.


The icing on the cake would be if it would then also be possible to toggle whether or not updates would be included in the output generated (or, alternatively, whether or not those portions of the output covering updates are displayed).


I already looked into this problem with Mike Hulme during a support session earlier this evening.

It's really surprising that this feature was implemented in this way.  Not only is it incomplete, but this method is extremely inefficient and messy.  It's slow and fills the event log with "Windows Installer reconfigured the product.".  This can be seen from the screenshots here:


https://docs.connectwise.com/ConnectWise_Control_Documentation/Supported_extensions/Productivity/Remote_Diagnostic_Toolkit?psa=1


Microsoft KB supporting this:

https://support.microsoft.com/en-us/help/974524/event-log-message-indicates-that-the-windows-installer-reconfigured-al

Unfortunately the suggestion they give is not valid any more.  It doesn't work on 64-bit machines.


The better alternative is usually to query the registry.  I have a PowerShell script written that does a pretty good job and I could have swore I had it integrated in to ConnectWise Control Access to return the output in a custom tab, but recent updates seem to have broke it and I can't seem to find the custom code I had written to do it.


Some references on how to do this properly:

https://devblogs.microsoft.com/scripting/use-powershell-to-find-installed-software/

http://jeffwouters.nl/index.php/2014/01/a-powershell-function-to-get-the-installed-software/