Win32_PhysicalMemory jscript sample code | ActiveXperts Network Monitor
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_PhysicalMemory WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Description
The Win32_PhysicalMemory WMI class represents a physical memory device located on a computer system as available to the operating system.
Sample Code
var wbemFlagReturnImmediately = 0x10;
var wbemFlagForwardOnly = 0x20;
var arrComputers = new Array("\localhost");
for (i = 0; i < arrComputers.length; i++) {
WScript.Echo();
WScript.Echo("==========================================");
WScript.Echo("Computer: " + arrComputers[i]);
WScript.Echo("==========================================");
var objWMIService = GetObject("winmgmts:\\\\" + arrComputers[i] + "\\root\\CIMV2");
var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMemory", "WQL",
wbemFlagReturnImmediately | wbemFlagForwardOnly);
var enumItems = new Enumerator(colItems);
for (; !enumItems.atEnd(); enumItems.moveNext()) {
var objItem = enumItems.item();
WScript.Echo("BankLabel: " + objItem.BankLabel);
WScript.Echo("Capacity: " + objItem.Capacity);
WScript.Echo("Caption: " + objItem.Caption);
WScript.Echo("CreationClassName: " + objItem.CreationClassName);
WScript.Echo("DataWidth: " + objItem.DataWidth);
WScript.Echo("Description: " + objItem.Description);
WScript.Echo("DeviceLocator: " + objItem.DeviceLocator);
WScript.Echo("FormFactor: " + objItem.FormFactor);
WScript.Echo("HotSwappable: " + objItem.HotSwappable);
WScript.Echo("InstallDate: " + WMIDateStringToDate(objItem.InstallDate));
WScript.Echo("InterleaveDataDepth: " + objItem.InterleaveDataDepth);
WScript.Echo("InterleavePosition: " + objItem.InterleavePosition);
WScript.Echo("Manufacturer: " + objItem.Manufacturer);
WScript.Echo("MemoryType: " + objItem.MemoryType);
WScript.Echo("Model: " + objItem.Model);
WScript.Echo("Name: " + objItem.Name);
WScript.Echo("OtherIdentifyingInfo: " + objItem.OtherIdentifyingInfo);
WScript.Echo("PartNumber: " + objItem.PartNumber);
WScript.Echo("PositionInRow: " + objItem.PositionInRow);
WScript.Echo("PoweredOn: " + objItem.PoweredOn);
WScript.Echo("Removable: " + objItem.Removable);
WScript.Echo("Replaceable: " + objItem.Replaceable);
WScript.Echo("SerialNumber: " + objItem.SerialNumber);
WScript.Echo("SKU: " + objItem.SKU);
WScript.Echo("Speed: " + objItem.Speed);
WScript.Echo("Status: " + objItem.Status);
WScript.Echo("Tag: " + objItem.Tag);
WScript.Echo("TotalWidth: " + objItem.TotalWidth);
WScript.Echo("TypeDetail: " + objItem.TypeDetail);
WScript.Echo("Version: " + objItem.Version);
}
}
function WMIDateStringToDate(dtmDate)
{
if (dtmDate == null)
{
return "null date";
}
var strDateTime;
if (dtmDate.substr(4, 1) == 0)
{
strDateTime = dtmDate.substr(5, 1) + "/";
}
else
{
strDateTime = dtmDate.substr(4, 2) + "/";
}
if (dtmDate.substr(6, 1) == 0)
{
strDateTime = strDateTime + dtmDate.substr(7, 1) + "/";
}
else
{
strDateTime = strDateTime + dtmDate.substr(6, 2) + "/";
}
strDateTime = strDateTime + dtmDate.substr(0, 4) + " " +
dtmDate.substr(8, 2) + ":" +
dtmDate.substr(10, 2) + ":" +
dtmDate.substr(12, 2);
return(strDateTime);
}
