Win32_BIOS python sample code
The foundations for Manageability in Windows is Windows Management Instrumentation (WMI; formerly WBEM) and WMI extensions for Windows Driver Model (WDM).
ActiveXperts Network Monitor provides the ability to build monitor check routines based on WMI. ActiveXperts has collected more than a hundred WMI samples. You can use these samples as a base for new check routines you can write yourself. The Win32_BIOS WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Description
The Win32_BIOS WMI class represents the attributes of the computer system`s basic input/output services (BIOS) that are installed on the computer.
Sample Code
import win32com.client def WMIDateStringToDate(dtmDate): strDateTime = "" if (dtmDate[4] == 0): strDateTime = dtmDate[5] + '/' else: strDateTime = dtmDate[4] + dtmDate[5] + '/' if (dtmDate[6] == 0): strDateTime = strDateTime + dtmDate[7] + '/' else: strDateTime = strDateTime + dtmDate[6] + dtmDate[7] + '/' strDateTime = strDateTime + dtmDate[0] + dtmDate[1] + dtmDate[2] + dtmDate[3] + " " + dtmDate[8] + dtmDate[9] + ":" + dtmDate[10] + dtmDate[11] +':' + dtmDate[12] + dtmDate[13] return strDateTime strComputer = "." objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator") objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2") colItems = objSWbemServices.ExecQuery("SELECT * FROM Win32_BIOS") for objItem in colItems: print "BiosCharacteristics:" strList = " " try : for objElem in objItem.BiosCharacteristics : strList = strList + `objElem` + "," except: strList = strList + 'null' print strList print "BIOSVersion:" strList = " " try : for objElem in objItem.BIOSVersion : strList = strList + `objElem` + "," except: strList = strList + 'null' print strList if objItem.BuildNumber != None: print "BuildNumber:" + ` objItem.BuildNumber` if objItem.Caption != None: print "Caption:" + ` objItem.Caption` if objItem.CodeSet != None: print "CodeSet:" + ` objItem.CodeSet` if objItem.CurrentLanguage != None: print "CurrentLanguage:" + ` objItem.CurrentLanguage` if objItem.Description != None: print "Description:" + ` objItem.Description` if objItem.IdentificationCode != None: print "IdentificationCode:" + ` objItem.IdentificationCode` if objItem.InstallableLanguages != None: print "InstallableLanguages:" + ` objItem.InstallableLanguages` if objItem.InstallDate != None: print "InstallDate:" + WMIDateStringToDate(objItem.InstallDate) if objItem.LanguageEdition != None: print "LanguageEdition:" + ` objItem.LanguageEdition` print "ListOfLanguages:" strList = " " try : for objElem in objItem.ListOfLanguages : strList = strList + `objElem` + "," except: strList = strList + 'null' print strList if objItem.Manufacturer != None: print "Manufacturer:" + ` objItem.Manufacturer` if objItem.Name != None: print "Name:" + ` objItem.Name` if objItem.OtherTargetOS != None: print "OtherTargetOS:" + ` objItem.OtherTargetOS` if objItem.PrimaryBIOS != None: print "PrimaryBIOS:" + ` objItem.PrimaryBIOS` if objItem.ReleaseDate != None: print "ReleaseDate:" + WMIDateStringToDate(objItem.ReleaseDate) if objItem.SerialNumber != None: print "SerialNumber:" + ` objItem.SerialNumber` if objItem.SMBIOSBIOSVersion != None: print "SMBIOSBIOSVersion:" + ` objItem.SMBIOSBIOSVersion` if objItem.SMBIOSMajorVersion != None: print "SMBIOSMajorVersion:" + ` objItem.SMBIOSMajorVersion` if objItem.SMBIOSMinorVersion != None: print "SMBIOSMinorVersion:" + ` objItem.SMBIOSMinorVersion` if objItem.SMBIOSPresent != None: print "SMBIOSPresent:" + ` objItem.SMBIOSPresent` if objItem.SoftwareElementID != None: print "SoftwareElementID:" + ` objItem.SoftwareElementID` if objItem.SoftwareElementState != None: print "SoftwareElementState:" + ` objItem.SoftwareElementState` if objItem.Status != None: print "Status:" + ` objItem.Status` if objItem.TargetOperatingSystem != None: print "TargetOperatingSystem:" + ` objItem.TargetOperatingSystem` if objItem.Version != None: print "Version:" + ` objItem.Version`