VBScript получить сумму значений из цикла запросов WMI - PullRequest
0 голосов
/ 23 мая 2018

Базовый скрипт, показанный ниже, будет отображать значение каждого объекта objItem.MemoryDevices (M), которое он находит в столбцах.Однако это не то, что я хочу.Поскольку каждое значение всегда будет числом, я хочу, чтобы оно отображало общую сумму всех найденных значений.

strComputer = "."

Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMemoryArray",,48 )


For Each objItem in colItems
    M = objItem.MemoryDevices
    Wscript.Echo M
Next

1 Ответ

0 голосов
/ 23 мая 2018

VBScript автоматически преобразует между строковым и числовым типами.Вы должны быть в состоянии выполнить то, что вы хотите, добавив набор Total к числу, а затем увеличьте Total на вашу переменную M.

strComputer = "."

Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
Set colItems = objWMIService.ExecQuery("SELECT * FROM 
Win32_PhysicalMemoryArray",,48 )

Total = 0
For Each objItem in colItems
    M = objItem.MemoryDevices
    Total = Total + M
Next

WScript.Echo Total
...