这两天在写一个内存监控的DLL,刚开始学写DLL,什么都不会,昨天在网上找一个有关内存的小程序,如下:
#include <windows.h>
#include <stdio.h>
#define DIV 1024
char *divisor = "K";
#define WIDTH 7
void main(int argc, char *argv[])
{
MEMORYSTATUS stat;
GlobalMemoryStatus (&stat);
printf ("The MemoryStatus structure is %ld bytes long./n",
stat.dwLength);
printf ("It should be %d./n", sizeof (stat));
printf ("%ld percent of memory is in use./n",
stat.dwMemoryLoad);
printf ("There are %*ld total %sbytes of physical memory./n",
WIDTH, stat.dwTotalPhys/DIV, divisor);
printf ("There are %*ld free %sbytes of physical memory./n",
WIDTH, stat.dwAvailPhys/DIV, divisor);
printf ("There are %*ld total %sbytes of paging file./n",
WIDTH, stat.dwTotalPageFile/DIV, divisor);
printf ("There are %*ld free %sbytes of paging file./n",
WIDTH, stat.dwAvailPageFile/DIV, divisor);
printf ("There are %*lx total %sbytes of virtual memory./n",
WIDTH, stat.dwTotalVirtual/DIV, divisor);
printf ("There are %*lx free %sbytes of virtual memory./n",
WIDTH, stat.dwAvailVirtual/DIV, divisor);
}
我要写的是一个有关内存信息实时采集的库,看了一天了还是没有头绪,晕了!
本文介绍了一个简单的内存监控DLL开发过程。通过一个示例程序展示了如何使用Windows API函数GlobalMemoryStatus来获取系统的内存状态信息,并将这些信息打印出来。包括总物理内存、可用物理内存、总交换文件大小等。
5589

被折叠的 条评论
为什么被折叠?



