Most of software audit tools use both WMI and registry data to merge them and report an accurate list of installed programs. Reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /s In order to get information about all installed applications you need to merge results reported by WMI with results reported by the following registry query.
Information about these installations is stored in Windows registry. Depending on a particular system you can find several entries that were not installed by Windows Installer. it reports only applications that were installed using Windows Installer. It happens because WMI reports only data that are available in the Windows Installer database, i.e. there are some entries that are missing in the WMI results. If you compare installed programs audit results produced by WMI with the information displayed by the Add/Remove Programs list, you can see that it isn't complete, i.e. Introducing Clarity into Installed Software Audit Results On modern environments you have to enable WMI manually, because it's disabled by default.
If this remote command fails, you need to check if WMI is enabled on the remote PC and in your network infrastructure. Is it possible to perform installed applications audit remotely? WMIC accepts parameter that defines a PC that should be contacted, so you can execute a command remotely using the following syntax. The commands above extracted installed applications list from the PC where they were executed. Wmic product get name,version /format:csv > software-inventory.csv Collecting Software Audit Information from Remote PCs If you need to have it in a file you can use an additional option to specify an output format and destination file. These commands sends the information to a console Windows. If you like to get software audit information including only software product name and version, you need to change the command to the following. For example, in order to get information about software installed on a computer you need to execute the following command in the Windows command-line console. This information can be accessed through a command-line using Windows Management Instrumentation Command-line (WMIC). Windows Management Instrumentation (WMI) is a special system interface that provides an access for Windows components and external applications to the system information that includes software inventory data. Getting a Software Audit Information Using WMI Fortunately you don't need to create such file manually, because you can use WMI requests to get a software inventory information that you need. It is possible to see this information in the Add/Remove Programs view in Windows, but for reports preparation and other tasks this information should be available in a file. For various purposes it's required sometimes to have a software audit information as a list of all programs installed on a PC.