error airport wmi

airport - ¿Cómo puedo encontrar la cantidad de video Ram instalada a través de una llamada WMI?



wmi windows 10 (4)

¿Alguien sabe cómo obtener el Video Ram de una PC de una llamada de WMI?

He visto llamadas a la propiedad AdapterRAM del objeto de administración Win32_VideoController, pero eso solo da a la memoria del sistema, y ​​no es representativa de la RAM de video en absoluto.


Ya fuimos por el camino de la propiedad AdapterRAM, pero eso solo nos proporcionaba la memoria del sistema, que no tiene nada que ver con Video Ram. ¿Hay alguna otra manera de obtener el video ram?


Desde el Repositorio de scripts del Centro de scripts de Microsoft Technet en ''Hardware'', luego ''Video y pantalla'', luego ''Lista de propiedades del controlador de video''.

Me imagino que tendrías que encontrar algo entre AdapterRAM y ''VideoMemoryType''

On Error Resume Next strComputer = "." Set objWMIService = GetObject("winmgmts://" & strComputer & "/root/cimv2") Set colItems = objWMIService.ExecQuery _ ("Select * from Win32_VideoController") For Each objItem in colItems For Each strCapability in objItem.AcceleratorCapabilities Wscript.Echo "Accelerator Capability: " & strCapability Next Wscript.Echo "Adapter Compatibility: " & objItem.AdapterCompatibility Wscript.Echo "Adapter DAC Type: " & objItem.AdapterDACType Wscript.Echo "Adapter RAM: " & objItem.AdapterRAM Wscript.Echo "Availability: " & objItem.Availability Wscript.Echo "Color Table Entries: " & objItem.ColorTableEntries Wscript.Echo "Current Bits Per Pixel: " & objItem.CurrentBitsPerPixel Wscript.Echo "Current Horizontal Resolution: " & _ objItem.CurrentHorizontalResolution Wscript.Echo "Current Number of Colors: " & objItem.CurrentNumberOfColors Wscript.Echo "Current Number of Columns: " & objItem.CurrentNumberOfColumns Wscript.Echo "Current Number of Rows: " & objItem.CurrentNumberOfRows Wscript.Echo "Current Refresh Rate: " & objItem.CurrentRefreshRate Wscript.Echo "Current Scan Mode: " & objItem.CurrentScanMode Wscript.Echo "Current Vertical Resolution: " & _ objItem.CurrentVerticalResolution Wscript.Echo "Description: " & objItem.Description Wscript.Echo "Device ID: " & objItem.DeviceID Wscript.Echo "Device Specific Pens: " & objItem.DeviceSpecificPens Wscript.Echo "Dither Type: " & objItem.DitherType Wscript.Echo "Driver Date: " & objItem.DriverDate Wscript.Echo "Driver Version: " & objItem.DriverVersion Wscript.Echo "ICM Intent: " & objItem.ICMIntent Wscript.Echo "ICM Method: " & objItem.ICMMethod Wscript.Echo "INF Filename: " & objItem.InfFilename Wscript.Echo "INF Section: " & objItem.InfSection Wscript.Echo "Installed Display Drivers: " & _ objItem.InstalledDisplayDrivers Wscript.Echo "Maximum Memory Supported: " & objItem.MaxMemorySupported Wscript.Echo "Maximum Number Controlled: " & objItem.MaxNumberControlled Wscript.Echo "Maximum Refresh Rate: " & objItem.MaxRefreshRate Wscript.Echo "Minimum Refresh Rate: " & objItem.MinRefreshRate Wscript.Echo "Monochrome: " & objItem.Monochrome Wscript.Echo "Name: " & objItem.Name Wscript.Echo "Number of Color Planes: " & objItem.NumberOfColorPlanes Wscript.Echo "Number of Video Pages: " & objItem.NumberOfVideoPages Wscript.Echo "PNP Device ID: " & objItem.PNPDeviceID Wscript.Echo "Reserved System Palette Entries: " & _ objItem.ReservedSystemPaletteEntries Wscript.Echo "Specification Version: " & objItem.SpecificationVersion Wscript.Echo "System Palette Entries: " & objItem.SystemPaletteEntries Wscript.Echo "Video Architecture: " & objItem.VideoArchitecture Wscript.Echo "Video Memory Type: " & objItem.VideoMemoryType Wscript.Echo "Video Mode: " & objItem.VideoMode Wscript.Echo "Video Mode Description: " & objItem.VideoModeDescription Wscript.Echo "Video Processor: " & objItem.VideoProcessor Next


Resulta que fue el adaptador que devolvió la RAM, y por una desafortunada coincidencia, se utilizó la conversión incorrecta y le dio al sistema RAM ... en dos sistemas diferentes. Gracias por empujarnos a mirar de nuevo.

Por lo que vale, en una aplicación C # WinForms:

int _ram = 0; ManagementObjectSearcher searcher = new ManagementObjectSearcher("select AdapterRAM from Win32_VideoController"); foreach (ManagementObject mo in searcher.Get()) { var ram = mo.Properties["AdapterRAM"].Value as UInt32?; if (ram.HasValue) { _ram = ((int)ram/1048576); } }


ManagementObjectSearcher searcher = new ManagementObjectSearcher("select AdapterRAM from Win32_VideoController"); foreach (ManagementObject mo in searcher.Get()) { double MemorySize = Convert.ToDouble(mo.Properties["AdapterRAM"].Value) / 1048576; return MemorySize.ToString(); }