PDA

View Full Version : مشکل در نمایش مقدار ram با api ( تنها مقدار یک رم نشان داده می شود )



DownloadLearn
سه شنبه 02 دی 1393, 02:32 صبح
سلام دوستان
می خوام با استفاده از توابع api مقدار کل رم و مقدار رم استفاده شده رو نمایش بدم وقتی سیستم یک رم داشته باشه ( مثلا یک رم 4 گیگ) برنامه درست کار می کنه ولی مشکلی که هست وقتی سیستم 2 تا رم داشته باشه فقط مقدار یکی از رم ها رو نمایش میده ممنون میشم راهنمایی کنید مشکل از کجاست









[DllImport("kernel32")]
public static extern void GlobalMemoryStatus(ref MEMORYSTATUS buf);


[StructLayout(LayoutKind.Sequential)]
public struct MEMORYSTATUS
{
public uint dwLength;
public uint dwMemoryLoad;
public uint dwTotalPhys;
public uint dwAvailPhys;
public uint dwTotalPageFile;
public uint dwAvailPageFile;
public uint dwTotalVirtual;
public uint dwAvailVirtual;
}



MEMORYSTATUS ms = new MEMORYSTATUS();
GlobalMemoryStatus(ref ms);
textBox1.Text = Convert.ToString(ms.dwTotalPhys / 1024 / 1024)+ " MB";

plus
سه شنبه 02 دی 1393, 04:19 صبح
از GlobalMemoryStatusEx استفاده کنید.
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366589(v=vs.85).aspx
http://pinvoke.net/default.aspx/kernel32/GlobalMemoryStatusEx.html