memorystatus.cs

来自「windows mobile 开发实例wi ndows mobile 开发实例」· CS 代码 · 共 70 行

CS
70
字号
// MemoryStatus.cs - Displays system memory status
// by calling a Win32 function and passing a pointer to a data
// structure.
//
// Code from _Programming the .NET Compact Framework with C#_
// and _Programming the .NET Compact Framework with VB_
// (c) Copyright 2002-2004 Paul Yao and David Durant. 
// All rights reserved.

using System;
using System.Text;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace MemoryStatus
{
   public class MemoryStatus
   {
      [DllImport("coredll.dll")]
      public static extern 
      void GlobalMemoryStatus (ref MEMORYSTATUS lpBuffer);

      public struct MEMORYSTATUS
      {
         public int dwLength;
         public int dwMemoryLoad;
         public int dwTotalPhys;
         public int dwAvailPhys;
         public int dwTotalPageFile;
         public int dwAvailPageFile;
         public int dwTotalVirtual;
         public int dwAvailVirtual;
      };
      const string CRLF = "\r\n";
   
      public static void Main()
      {
         MEMORYSTATUS ms = new MEMORYSTATUS();
         ms.dwLength = Marshal.SizeOf(ms);
         GlobalMemoryStatus(ref ms);
         
         string strAppName = "Memory Status";
         
         StringBuilder sbMessage = new StringBuilder();
         sbMessage.Append("Memory Load = ");
         sbMessage.Append(ms.dwMemoryLoad.ToString() + "%");
         sbMessage.Append(CRLF);
         sbMessage.Append("Total RAM = ");
         sbMessage.Append(ms.dwTotalPhys.ToString("#,##0"));
         sbMessage.Append(CRLF);
         sbMessage.Append("Avail RAM = ");
         sbMessage.Append(ms.dwAvailPhys.ToString("#,##0"));
         sbMessage.Append(CRLF);
         sbMessage.Append("Total Page = ");
         sbMessage.Append(ms.dwTotalPageFile.ToString("#,##0"));
         sbMessage.Append(CRLF);
         sbMessage.Append("Avail Page = ");
         sbMessage.Append(ms.dwAvailPageFile.ToString("#,##0"));
         sbMessage.Append(CRLF);
         sbMessage.Append("Total Virt = ");
         sbMessage.Append(ms.dwTotalVirtual.ToString("#,##0"));
         sbMessage.Append(CRLF);
         sbMessage.Append("Avail Virt = ");
         sbMessage.Append(ms.dwAvailVirtual.ToString("#,##0"));

         MessageBox.Show(sbMessage.ToString(), strAppName);
      }
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?