22 lines
1.3 KiB
PowerShell

# Create reference to the CIM_Memory instance.
$memoryRef = $wsmanConnectionObject.NewReference("SELECT * FROM CIM_Memory WHERE DeviceID='Memory 0'")
$realizesRef = $wsmanConnectionObject.NewReference("CIM_Realizes")
$realizesRef.AddSelector("Dependent", $memoryRef)
# Traverse to the CIM_Realizes instances that are connected to the CIM_Memory.
foreach($realizesItem in $realizesRef.Enumerate("http://schemas.dmtf.org/wbem/wsman/1/wsman/SelectorFilter", $null))
{
# For each instance, check if it is associated to the CIM_PhysicalMemory instance.
if($realizesItem.Object.GetProperty("Antecedent").IsA("CIM_PhysicalMemory"))
{
# Get the CIM_PhysicalMemory object using its EPR.
$physicalMemoryInstance = $realizesItem.Object.GetProperty("Antecedent").Ref.Get()
$capacity = $physicalMemoryInstance.GetProperty("Capacity")
$formFactor = $physicalMemoryInstance.GetProperty("FormFactor")
$memoryType = $physicalMemoryInstance.GetProperty("MemoryType")
$speed = $physicalMemoryInstance.GetProperty("Speed")
$manufacturer = $physicalMemoryInstance.GetProperty("Manufacturer")
$serialNumber = $physicalMemoryInstance.GetProperty("SerialNumber")
$partNumber = $physicalMemoryInstance.GetProperty("PartNumber")
$bankLabel = $physicalMemoryInstance.GetProperty("BankLabel")
}
}