Wie kann ich die Menge an Video finden Ram durch einen WMI-Aufruf installiert?
-
19-08-2019 - |
Frage
Wer weiß, wie das Video-RAM von einem PC aus einem WMI-Aufruf zu bekommen?
Ich habe Anrufe an die Win32_VideoController Objektverwaltung AdapterRAM Unterkunft gesehen, aber das gibt nur den Systemspeicher und ist nicht repräsentativ für den Video-RAM überhaupt.
Lösung
Es stellte sich heraus, dass es der Adapter RAM war zurückgekehrt, und durch einen unglücklichen Zufall wurde die falsche Umwandlung verwendet und gab dem System-RAM ... auf zwei verschiedenen Systemen. Vielen Dank für uns drängen wieder zu suchen.
Für das, was es wert ist, in einer C # WinForms App:
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);
}
}
Andere Tipps
Das Microsoft Technet Script Center Script Repository unter 'Hardware' und dann ' Video und Display‘dann 'Liste Video Controller Eigenschaften'.
Ich könnte mir vorstellen, haben Sie vielleicht etwas zwischen AdapterRAM arbeiten, und ‚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
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();
}
Wir gingen bereits den Weg der AdapterRAM Eigenschaft nach unten, aber das war uns nur auf den Systemspeicher zu geben, die nichts mit dem Video-RAM zu tun hat. Gibt es einen anderen Weg, um den Video-RAM zu bekommen?