4Gバイト以下のページング・ファイル容量を取得するにはGlobalMemoryStatus()関数を使います。
搭載容量と空き容量が取得できます。使用容量は引き算して求めます。(戻る)
プロトタイプ宣言
VOID GlobalMemoryStatus( LPMEMORYSTATUS lpBuffer // メモリステータスの構造体 );
構造体
typedef struct _MEMORYSTATUS { DWORD dwLength; // 構造体のサイズ DWORD dwMemoryLoad; // メモリの使用率(%) SIZE_T dwTotalPhys; // 物理メモリの搭載容量 SIZE_T dwAvailPhys; // 物理メモリの空き容量 SIZE_T dwTotalPageFile; // ページングの搭載容量 SIZE_T dwAvailPageFile; // ページングの空き容量 SIZE_T dwTotalVirtual; // 仮想メモリの搭載容量 SIZE_T dwAvailVirtual; // 仮想メモリの空き容量 } MEMORYSTATUS, *LPMEMORYSTATUS;
サンプル
// 情報収集 MEMORYSTATUS ms = { sizeof(MEMORYSTATUS) }; GlobalMemoryStatus( &ms ); // ページング・ファイルの使用容量 DWORD dwUsed = (ms.dwTotalPageFile - ms.dwAvailPageFile); // ページング・ファイルの空き容量 DWORD dwFree = (ms.dwAvailPageFile); // ページング・ファイルの搭載容量 DWORD dwSize = (ms.dwTotalPageFile);注意事項: 4Gバイトを超えるメインメモリを実装しているコンピュータではGlobalMemoryStatusEx()関数を使って下さい。
※コメント投稿者のブログIDはブログ作成者のみに通知されます