Win32_Processor jscript 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_Processor WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Description
The Win32_Processor WMI class represents a device that can interpret a sequence of machine instructions on a computer running a Windows® operating system. On a multiprocessor machine, one instance of the Win32_Processor class exists for each processor.
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_Processor", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly); var enumItems = new Enumerator(colItems); for (; !enumItems.atEnd(); enumItems.moveNext()) { var objItem = enumItems.item(); WScript.Echo("AddressWidth: " + objItem.AddressWidth); WScript.Echo("Architecture: " + objItem.Architecture); WScript.Echo("Availability: " + objItem.Availability); WScript.Echo("Caption: " + objItem.Caption); WScript.Echo("ConfigManagerErrorCode: " + objItem.ConfigManagerErrorCode); WScript.Echo("ConfigManagerUserConfig: " + objItem.ConfigManagerUserConfig); WScript.Echo("CpuStatus: " + objItem.CpuStatus); WScript.Echo("CreationClassName: " + objItem.CreationClassName); WScript.Echo("CurrentClockSpeed: " + objItem.CurrentClockSpeed); WScript.Echo("CurrentVoltage: " + objItem.CurrentVoltage); WScript.Echo("DataWidth: " + objItem.DataWidth); WScript.Echo("Description: " + objItem.Description); WScript.Echo("DeviceID: " + objItem.DeviceID); WScript.Echo("ErrorCleared: " + objItem.ErrorCleared); WScript.Echo("ErrorDescription: " + objItem.ErrorDescription); WScript.Echo("ExtClock: " + objItem.ExtClock); WScript.Echo("Family: " + objItem.Family); WScript.Echo("InstallDate: " + WMIDateStringToDate(objItem.InstallDate)); WScript.Echo("L2CacheSize: " + objItem.L2CacheSize); WScript.Echo("L2CacheSpeed: " + objItem.L2CacheSpeed); WScript.Echo("LastErrorCode: " + objItem.LastErrorCode); WScript.Echo("Level: " + objItem.Level); WScript.Echo("LoadPercentage: " + objItem.LoadPercentage); WScript.Echo("Manufacturer: " + objItem.Manufacturer); WScript.Echo("MaxClockSpeed: " + objItem.MaxClockSpeed); WScript.Echo("Name: " + objItem.Name); WScript.Echo("OtherFamilyDescription: " + objItem.OtherFamilyDescription); WScript.Echo("PNPDeviceID: " + objItem.PNPDeviceID); try { WScript.Echo("PowerManagementCapabilities: " + (objItem.PowerManagementCapabilities.toArray()).join(",")); } catch(e) { WScript.Echo("PowerManagementCapabilities: null"); } WScript.Echo("PowerManagementSupported: " + objItem.PowerManagementSupported); WScript.Echo("ProcessorId: " + objItem.ProcessorId); WScript.Echo("ProcessorType: " + objItem.ProcessorType); WScript.Echo("Revision: " + objItem.Revision); WScript.Echo("Role: " + objItem.Role); WScript.Echo("SocketDesignation: " + objItem.SocketDesignation); WScript.Echo("Status: " + objItem.Status); WScript.Echo("StatusInfo: " + objItem.StatusInfo); WScript.Echo("Stepping: " + objItem.Stepping); WScript.Echo("SystemCreationClassName: " + objItem.SystemCreationClassName); WScript.Echo("SystemName: " + objItem.SystemName); WScript.Echo("UniqueId: " + objItem.UniqueId); WScript.Echo("UpgradeMethod: " + objItem.UpgradeMethod); WScript.Echo("Version: " + objItem.Version); WScript.Echo("VoltageCaps: " + objItem.VoltageCaps); } } 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); }