SCCM How to find the list of patches installed Via Quick Fix Engineering


I’ve seen people requesting for reports of list of Software Updates (patches) installed on a system along with Installed date.


ConfigMgr is not collecting the list of Software Updates (patches) for Window 7/Vista/ 2008/ 2008 Core operating systems. Because, on these operating systems this information is stored in “Win32_QuickFixEngineering”  WMI class (it’s not anymore listed in Add Remove Programs) and the inventory of this class is NOT enabled in SMS_DEF.MOF (by def ault). Hence ConfigMgr. report won’t be able to provide these details unless and until you’ve enabled the appropriate WMI class in SMS_DEF.MOF.

Whereas, in Windows XP, Windows 2003 etc. operating systems, the list of Software Updates (patches) are stored in Add Remove Programs and the WMI class for Add Remove program is enabled by default in SMS_DEF.MOF. Hence you will get these details from ConfigMgr reports for Windows XP, Windows 2003 etc. systems.

It’s not recommended to enable “Win32_QuickFixEngineering” WMI class. Refer the warning given in the SMS_DEF.MOF file below.

DO NOT: Enable the Win32_QuickFixEngineering class unless you have installed the QFE for Q279225.  Enabling this class without the QFE will result in inventory cycles taking a very long time to complete on the client and the WINMGMT service using 99% to 100% CPU time and leaking memory.”

The easiest way to get details from a single system is given below.

One liner command to list down the patch details of a machine (applicable only for Window 7/Vista/ 2008/ 2008 Core operating systems).

Wmic qfe list >c:\list.txt

This will provide you the list of Software Update (patches) applied on a system along with Caption, CSName (Hostname of the system – computer name), Description (category of the software update – Update, Hotfix, Security Update etc…), HotFixID, InstalledBy, InstalledOn (Date of Installation)


One other excellent post on the same topic – Link


  1. Hi Anoop ,
    So the report’s like Enforcement States for a deployment and other related reports are also giving the same info like what systems are compliant ,failed deployments etc .
    So what about that information . Is that information not legitimate . I believe since its fetching data from SQL database it would be the information that client has sent after giving it’s status against a particular deployment .
    Please advice …
    Thanks in advance…

  2. Please advice on this coz we are using sql reporting to fetch the data and i guess we are getting correct data on compliance of WIn7 machines .coz it also fetches data from SQL database .

  3. Good article.

    On another note, to find out the list of patches that are missing on machines, a custom report can be created against view v_Update_ComplianceStatusAll with condition status=2

  4. Great article Anoop. I don’t know if you have approached a software update report from this angle. But to emulate the “product” column in the software update list in the console. That way you can get metrics on how many updates are missing by the OS and what those updates are. Going against the System table and aggregating the OS Version does not seem to have the same values as the product column.



  5. HI Anoop,

    how can we check, list of server and server names for which latest windows patches installed in SCCM and also how to generate server list which is pending of windows patch update in SCCM
    also how can we trigger patch updates from SCCM console for a perticular client server


Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.