Recently a customer reported that when applying a hotfix (.MSP file) that updates the Configuration Manager client software, some customized hardware inventory data was later missing for the targeted clients. The customer was looking specifically at information previously added to the Win32Reg_AddRemovePrograms class.
Here is what happened:
The client installation process, which in this context also includes installing a patch, triggers local compilation of a few buit-in MOF files that are needed for some core client functions.
The end result is that if you have customized hardware inventory to extend Win32Reg_AddRemovePrograms, or one of the other classes in the following list, your customizations will not be preserved when you apply a patch to the Configuration Manager client:
To recover and have these classes reported properly again requires an update to the hardware inventory policy data on the site server. This can be forced by just making a change to the sms_def.mof (such as adding, then removing a space) and saving it to force Inventory Data Loader to update policy based on the mof. This is a site wide change, though a small one. To minimize repetition of this, and therefore unnecessary traffic, wait to do this until all Configuration Manager clients have been updated.