GetSysteminfo();
好象是吧。(API)
不过何必呢???

解决方案 »

  1.   

    用MEMORYSTATUS这个api,参数dwAvailPhys
    The MEMORYSTATUS structure contains information about current memory availability. The 
    GlobalMemoryStatus function uses this structure. typedef struct _MEMORYSTATUS { // mst  
        DWORD dwLength;        // sizeof(MEMORYSTATUS) 
        DWORD dwMemoryLoad;    // percent of memory in use 
        DWORD dwTotalPhys;     // bytes of physical memory 
        DWORD dwAvailPhys;     // free physical memory bytes 
        DWORD dwTotalPageFile; // bytes of paging file 
        DWORD dwAvailPageFile; // free bytes of paging file 
        DWORD dwTotalVirtual;  // user bytes of address space 
        DWORD dwAvailVirtual;  // free user bytes } MEMORYSTATUS, *LPMEMORYSTATUS; 
     MembersdwLengthIndicates the size of the structure. The calling process should set this member prior to calling GlobalMemoryStatus. dwMemoryLoadSpecifies a number between 0 and 100 that gives a general idea of current memory utilization, in which 0 indicates no memory use and 100 indicates full memory use. dwTotalPhysIndicates the total number of bytes of physical memory. dwAvailPhysIndicates the number of bytes of physical memory available. dwTotalPageFileIndicates the total number of bytes that can be stored in the paging file. Note that this number does not represent the actual physical size of the paging file on disk. dwAvailPageFileIndicates the number of bytes available in the paging file. dwTotalVirtualIndicates the total number of bytes that can be described in the user mode portion of the virtual address space of the calling process. dwAvailVirtualIndicates the number of bytes of unreserved and uncommitted memory in the user mode portion of the virtual address space of the calling process.