如何通过WMI调用找到安装的视频Ram数量?

Pet*_*lke 1 wmi

有谁知道如何通过WMI调用获取PC的Video Ram?

我已经看到调用Win32_VideoController管理对象的AdapterRAM属性,但这只给出系统内存,根本不代表视频RAM.

Lee*_*oth 7

原来它是适配器RAM返回,并且通过一个不幸的巧合,使用了错误的转换并在两个不同的系统上给出了系统RAM .... 谢谢你让我们再看一遍.

对于它的价值,在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);
   }
}
Run Code Online (Sandbox Code Playgroud)

  • 我想知道当有人拥有 4 GiB 或更多 RAM 的 GPU 时,这个愚蠢的 uint32 会发生什么 (2认同)
  • 然后它将返回 4 GiB,这使得这个接口有点无用,并迫使我现在找到另一种方法来获得正确的值...... (2认同)