windows mobile進程查看器開發(四)—— 查看記憶體、內部儲存和儲存卡的使用方式

來源:互聯網
上載者:User

前三講的內容講得很不詳細,因為這是之前做的,所以就大概拷貝了一下代碼,接下來要實現的幾個功能我也是一邊學習,一邊做的,所以會講得稍微詳細一點。

 

獲得當前儲存資訊要用到的函數

 

BOOL WINAPI GlobalMemoryStatus(__inout LPMEMORYSTATUSEX lpBuffer);

 

其中,lpBuffer是一個MEMORYSTATUS結構體,可以擷取當前的儲存資訊。

 

typedef struct _MEMORYSTATUS {
DWORD dwLength;
DWORD dwMemoryLoad;
DWORD dwTotalPhys;
DWORD dwAvailPhys;
DWORD dwTotalPageFile;
DWORD dwAvailPageFile;
DWORD dwTotalVirtual;
DWORD dwAvailVirtual;
} MEMORYSTATUS, *LPMEMORYSTATUS;

  public partial class MemoryStatus : Form<br /> {<br /> public struct MEMORYINFO {<br /> public int dwLength;<br /> public int dwMemoryLoad;<br /> public int dwTotalPhys;<br /> public int dwAvailPhys;<br /> public int dwTotalPageFile;<br /> public int dwAvailPageFile;<br /> public int dwTotalVirtual;<br /> public int dwAvailVirtual;<br /> };</p><p> public MemoryStatus()<br /> {<br /> InitializeComponent();<br /> initial();<br /> }</p><p> private void menuItem1_Click(object sender, EventArgs e)<br /> {<br /> this.Close();<br /> }</p><p> private void initial() //初始化,擷取儲存資訊<br /> {<br /> MEMORYINFO mms; //定義的記憶體資訊結構體<br /> mms = new MEMORYINFO();<br /> GlobalMemoryStatus(ref mms);<br />// totalVirtual.Text = mms.dwMemoryLoad.ToString()+"% 的記憶體正在使用";<br /> totalVirtual.Text = ((float)mms.dwTotalVirtual / 1024 / 1024).ToString("0.00") + " MB";<br /> totalPhys.Text = ((float)mms.dwTotalPhys / 1024 / 1024).ToString("0.00") + " MB";<br /> availPhys.Text = ((float)mms.dwAvailPhys / 1024 / 1024).ToString("0.00") + " MB";<br /> availVirtual.Text = ((float)mms.dwAvailVirtual / 1024 / 1024).ToString("0.00") + " MB";<br /> usePhys.Text = (((float)mms.dwTotalPhys - mms.dwAvailPhys) / 1024 / 1024).ToString("0.00") + " MB";<br /> useVirtual.Text = (((float)mms.dwTotalVirtual - mms.dwAvailVirtual) / 1024 / 1024).ToString("0.00") + " MB";<br /> }</p><p> [DllImport("coredll.dll", SetLastError = true)]<br /> public static extern void GlobalMemoryStatus(ref MEMORYINFO buffer);</p><p> }

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.