반응형

http://blog.naver.com/silver6688/60047045316



VOID GlobalMemoryStatus(

  LPMEMORYSTATUS lpBuffer   // pointer to the memory status structure

);

MEMORYSTATUS의 구조체를 보면


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;

GlobalMemoryStatus(&ms); 

ms.dwTotalPhys - ms.dwAvailPhys  

 

ex)

MEMORYSTATUSEX memStatus;

 memset( &memStatus, 0, sizeof( MEMORYSTATUSEX ) );

 memStatus.dwLength = sizeof( MEMORYSTATUSEX );

 

 GlobalMemoryStatusEx( &memStatus );

 char szPhysicalMemory[MAX_PATH] = _T("");

 sprintf( szPhysicalMemory, "메모리 용량 : %ld Mbytes", memStatus.ullTotalPhys / MEMORY_DIVIDER / MEMORY_DIVIDER );

 m_ctrSystemTree.SetInsertItem( hParent, szPhysicalMemory );

 char szVirtualMemory[MAX_PATH] = _T("");

 sprintf( szVirtualMemory, "가상 메모리 : %ld Mbytes", memStatus.ullTotalVirtual / MEMORY_DIVIDER / MEMORY_DIVIDER );

 m_ctrSystemTree.SetInsertItem( hParent, szVirtualMemory );

 char szPagingMemory[MAX_PATH] = _T("");

 sprintf( szPagingMemory, "페이징 파일 최대크기 : %ud", memStatus.ullTotalPageFile );

 m_ctrSystemTree.SetInsertItem( hParent, szPagingMemory );


반응형

+ Recent posts