我不是程序員,但我試圖擴展Bginfo可以通過VBScript從計算機收集的信息量。我有一些工作,但一些WMI查詢返回多行值。我想分開這些多個行,以便我可以分開使用它們。下面是我部分地WMIGen創建了一個例子:需要幫助將WMI值轉換爲VBScript變量
Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20
strComputer = "."
Dim Installed
Dim Size
Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2")
Set colSlots = objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMemoryArray", "WQL", wbemFlagReturnImmediately + wbemFlagForwardOnly)
Set colMem = objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMemory", "WQL", wbemFlagReturnImmediately + wbemFlagForwardOnly)
On Error Resume Next
For Each objSlot In colSlots
TotalSlots = objSlot.MemoryDevices
Next
For Each objMem In colMem
MemDevices = objMem.DeviceLocator
PartNumbers = objMem.PartNumber
Size = Round(objMem.Capacity/1073741824) & " GB"
Next
On Error Goto 0
MemDevices,PartNumbers和尺寸都讓我結果的多行取決於有多少存儲設備也有。我怎樣才能得到每條線的價值,並將它們變成變量?這是我在想它的外觀:
RAM 1: Size in GB, Part Number, slot number on board.
RAM 2: Size in GB, Part number, slot number on board
"" Continue the list for the remaining RAM sticks ""
能否請您分享'MemDevices','PartNumbers'和'你Size'實際輸出的屏幕截圖,並輸出您期望。我試過了代碼,它顯示了每個插槽中包含的零件號和尺寸。 – omegastripes
我知道代碼沒有問題。例如,如果您有4個DIMM,MemDevices查詢將返回4行。我想要做的是學習如何將這些行中的每一行變成變量。這樣我就可以在Bginfo中分別列出每個插槽的大小,部件號和插槽編號。 – Chris