【发布时间】:2017-04-25 01:25:35
【问题描述】:
我正在制作一个显示一些硬件信息的软件, 以及其他信息。
我的问题是:
我使用这段代码,方法在另一个线程中找到:https://stackoverflow.com/a/15790751/5782981
public ulong InstalledRam { get; set; }
InstalledRam = GetTotalMemoryInBytes();
}
static ulong GetTotalMemoryInBytes()
{
return new Microsoft.VisualBasic.Devices.ComputerInfo().TotalPhysicalMemory;
}
返回
8482025472
为了测试它我去
MessageBox.Show(InstalledRam.ToString());
我已经看到了一些工作,也看到它在 fx 上不起作用。视窗 7。
我安装了 8 GB。
我想知道为什么返回值是84...
谢谢!
【问题讨论】:
-
请记住,该值以 字节 为单位,更大的测量单位(KB、MB、GB 等)不是 10 的幂。所以取那个值,除以 1024 以将其转换为 MB,然后将该值再除以 1024 以将其转换为 GB。结果将是大约 7.9GB。
-
8 * 1024 * 1024 * 1024 = 8589934592。然后你会因为葡萄干而损失一些(因此 Windows 经常会区分已安装和可用)
-
查看这篇文章:stackoverflow.com/questions/1553336/…,用于将结果值 8482025472 转换为 GB