private void Refresh() { if (isOldOS) { memoryStatus = new MEMORYSTATUS(); GlobalMemoryStatus(ref memoryStatus); } else { memoryStatusEx = new MEMORYSTATUSEX(); memoryStatusEx.Init(); if (!GlobalMemoryStatusEx(ref memoryStatusEx)) { throw new Win32Exception("Could not obtain memory information due to internal error."); } } }