Назад | Перейти на главную страницу

Получение физического барана

Каким будет предпочтительный способ собрать объем оперативной памяти на каждой из наших более чем 500 компьютеров с Windows (XP и 7) с наименьшими усилиями?

Я собираю эту информацию (и многое другое) как часть сценария входа в систему. Каждый журнал (один на машину и один на пользователя) позже анализируется, и информация сохраняется в базе данных. Соответствующая часть сценария (VBS), который я скопировал из давно забытого источника, такова:

'// Memory Info
objHardwareFile.WriteLine "Memory Information:"
objHardwareFile.WriteLine "==================="
For Each objMem In GetObject("winmgmts:{impersonationLevel=impersonate}\\.\root\cimv2").InstancesOf("Win32_PhysicalMemory")
Select Case objMem.MemoryType
    Case 0
        rtype = "Unknown"
    Case 1
        rtype = "Other"
    Case 2
        rtype = "DRAM"
    Case 3
        rtype = "Synchronous DRAM"
    Case 4
        rtype = "Cache DRAM"
    Case 5
        rtype = "EDO"
    Case 6
        rtype = "EDRAM"
    Case 7
        rtype = "VRAM"
    Case 8
        rtype = "SRAM"
    Case 9
        rtype = "RAM"
    Case 10
        rtype = "ROM"
    Case 11
        rtype = "Flash"
    Case 12
        rtype = "EEPROM"
    Case 13
        rtype = "FEPROM"
    Case 14
        rtype = "EPROM"
    Case 15
        rtype = "CDRAM"
    Case 16
        rtype = "3DRAM"
    Case 17
        rtype = "SDRAM"
    Case 18
        rtype = "SGRAM"
    Case 19
        rtype = "RDRAM"
    Case 20
        rtype = "DDR"
End Select
objHardwareFile.WriteLine " Memory Bank: " &  objMem.BankLabel
objHardwareFile.WriteLine " Memory Size: " & objMem.Capacity/1024/1024 & " MB"
objHardwareFile.WriteLine " Memory Speed: " & objMem.Speed & " MHZ"
objHardwareFile.WriteLine " Memory Type: " & rtype
next

Я бы предложил два варианта:

  1. Набор инструментов Microsoft Assessment and Planning (MAP) (бесплатно)
  2. Системная информация для Windows (требуется покупка лицензии и создание сценариев; я использовал ее, чтобы определить, какие модули ОЗУ (и сколько слотов) были примерно на 50 ПК, запустив ее во всей системе в сети через PSEXEC. Затем простая команда FIND для Полученные данные ясно сказали мне все, что мне нужно было знать.

Однако, поскольку ваш вопрос был наименее затратным, я бы, вероятно, сказал MAP.