ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Product");
foreach (ManagementObject wmi in searcher.Get()) {
wmi.GetPropertyValue("Name").ToString() }