Contact Info

Crumbtrail

ActiveXperts.com » Administration » Scripts » WMI » python sample

Win32_PhysicalMemoryArray 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_PhysicalMemoryArray WMI class can be used in ActiveXperts Network Monitor to monitor your servers.


Description

The Win32_PhysicalMemoryArray WMI class represents details about the computer system`s physical memory. This includes the number of memory devices, memory capacity available, and memory type (for example, system memory or video memory).

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_PhysicalMemoryArray")
for objItem in colItems:
    if objItem.Caption != None:
        print "Caption:" + ` objItem.Caption`
    if objItem.CreationClassName != None:
        print "CreationClassName:" + ` objItem.CreationClassName`
    if objItem.Depth != None:
        print "Depth:" + ` objItem.Depth`
    if objItem.Description != None:
        print "Description:" + ` objItem.Description`
    if objItem.Height != None:
        print "Height:" + ` objItem.Height`
    if objItem.HotSwappable != None:
        print "HotSwappable:" + ` objItem.HotSwappable`
    if objItem.InstallDate != None:
        print "InstallDate:" + WMIDateStringToDate(objItem.InstallDate)
    if objItem.Location != None:
        print "Location:" + ` objItem.Location`
    if objItem.Manufacturer != None:
        print "Manufacturer:" + ` objItem.Manufacturer`
    if objItem.MaxCapacity != None:
        print "MaxCapacity:" + ` objItem.MaxCapacity`
    if objItem.MemoryDevices != None:
        print "MemoryDevices:" + ` objItem.MemoryDevices`
    if objItem.MemoryErrorCorrection != None:
        print "MemoryErrorCorrection:" + ` objItem.MemoryErrorCorrection`
    if objItem.Model != None:
        print "Model:" + ` objItem.Model`
    if objItem.Name != None:
        print "Name:" + ` objItem.Name`
    if objItem.OtherIdentifyingInfo != None:
        print "OtherIdentifyingInfo:" + ` objItem.OtherIdentifyingInfo`
    if objItem.PartNumber != None:
        print "PartNumber:" + ` objItem.PartNumber`
    if objItem.PoweredOn != None:
        print "PoweredOn:" + ` objItem.PoweredOn`
    if objItem.Removable != None:
        print "Removable:" + ` objItem.Removable`
    if objItem.Replaceable != None:
        print "Replaceable:" + ` objItem.Replaceable`
    if objItem.SerialNumber != None:
        print "SerialNumber:" + ` objItem.SerialNumber`
    if objItem.SKU != None:
        print "SKU:" + ` objItem.SKU`
    if objItem.Status != None:
        print "Status:" + ` objItem.Status`
    if objItem.Tag != None:
        print "Tag:" + ` objItem.Tag`
    if objItem.Use != None:
        print "Use:" + ` objItem.Use`
    if objItem.Version != None:
        print "Version:" + ` objItem.Version`
    if objItem.Weight != None:
        print "Weight:" + ` objItem.Weight`
    if objItem.Width != None:
        print "Width:" + ` objItem.Width`