使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

在 Windows Vista 中,使用者介面 (UI) 的數個元件都會顯示電腦的實體記憶體總容量,而各個元件所報告的值都有些許差異。本文將告訴您不同元件報告的值稍有出入的原因。此外,本文也將指出哪個元件顯示的值最精確,並包含有關擷取最精確之值的應用程式發展介面 (API) 的資訊。

簡介

在 Windows Vista 中,報告電腦實體記憶體總容量的 UI 元件包括:

  • [控制台] 中的 [歡迎中心] 項目

  • [控制台] 中的 [系統] 項目

  • [工作管理員] 中的 [效能] 索引標籤

  • [控制台] 中 [效能資訊及工具] 項目的 [檢視和列印詳細資料] 頁面

  • Microsoft System Information (Msinfo32.exe) 工具

每個元件報告的電腦可用 RAM 總容量都有些許差異。之所以發生這個問題,是因為某些元件的設計只會顯示消費者容易辨識的 RAM 容量。此外,每個元件都是由不同團隊、在不同時間、為了特定目的而開發。

例如,當您在 Windows Vista 電腦上檢視下列元件時,可能會發生下列情況:

  • [控制台] 中 [歡迎中心] 項目報告的 RAM 容量是 2.00 GB

  • [控制台] 中 [系統] 項目報告的 RAM 容量是 2046 MB

  • [工作管理員] 的 [效能] 索引標籤報告的 RAM 容量是 2045 MB

  • [控制台] 中 [效能資訊及工具] 項目的 [檢視和列印詳細資料] 頁面報告的 RAM 容量是 2.00 GB

  • [系統資訊] 工具報告的 RAM 容量是 2,045.54 MB

在這些元件中,[系統資訊] 工具報告的實體記憶體總容量值最精確。

如何使用 API 取得實體記憶體總容量值

如果要擷取程式控制下最精確的值,開發人員應該依照下列步驟執行:

  1. 呼叫 GlobalMemoryStatusEx 函數。

  2. 查詢 MEMORYSTATUSEX 結構的 ullAvailPhys 成員。

元件會使用 GlobalMemoryStatusEx 函數,或 GlobalMemoryStatusEx 函數所使用的相同核心技術,以計算電腦的實體記憶體總容量。如果要以程式設計方式取得這個值,請查詢傳遞至 GlobalMemoryStatusEx 函數當做輸入的 MEMORYSTATUSEX 結構的 ullAvailPhys 成員。

在建置某些元件時,GlobalMemoryStatusEx 函數無法使用。不過,所有的元件都會使用相同的方式計算電腦的實體記憶體。各元件之間唯一的不同在於,在 UI 中顯示實體記憶體容量之前所執行的四捨五入計算。

其他相關資訊

如需有關 GlobalMemoryStatusEx 函數的詳細資訊,請造訪下列 Microsoft 網站:

http://msdn2.microsoft.com/en-us/library/aa366589.aspx如需有關 MEMORYSTATUSEX 結構的詳細資訊,請造訪下列 Microsoft 網站:

http://msdn2.microsoft.com/en-us/library/aa366770.aspx 如需有關已安裝 4 GB RAM 之 Windows Vista 電腦的記憶體大小報告的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

929605The system memory that is reported in the System Information dialog box in Windows Vista is less than you expect if 4 GB of RAM is installed

参考

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×