`
mmdev
  • 浏览: 13228526 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

GlobalMemoryStatus介绍

 
阅读更多
GlobalMemoryStatus,Win32 API函数。

此函数用来获得当前可用的物理和虚拟内存信息,函数定义为:

VOID GlobalMemoryStatus
(
  LPMEMORYSTATUS lpBuffer
);

此函数无返回值,参数是一个指向名为MEMORYSTATUS的结构的指针。函数的返回信息会被存储在MEMORYSTATUS结构中。

此函数用来替代用来支持16位应用程序的GetFreeSpace函数。

应用程序应该在申请内存前调用此函数以防止影响到其他程序运行。

这个函数的返回值是动态的,并且可能返回相同的值。

关于MEMORYSTATUS结构:

机构定义:
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;

结构成员的含义:
dwLength
MEMORYSTATUS结构的大小,在调GlobalMemoryStatus函数前用sizeof()函数求得,用来供函数检测结构的版本。

dwMemoryLoad
返回一个介于0~100之间的值,用来指示当前系统内存的使用率。

dwTotalPhys
返回总的物理内存大小,以字节(byte)为单位。

dwAvailPhys
返回可用的物理内存大小,以字节(byte)为单位。

dwTotalPageFile
显示可以存在页面文件中的字节数。注意这个数值并不表示在页面文件在磁盘上的真实物理大小。

dwAvailPageFile
返回可用的页面文件大小,以字节(byte)为单位。

dwTotalVirtual
返回调用进程的用户模式部分的全部可用虚拟地址空间,以字节(byte)为单位。

dwAvailVirtual
返回调用进程的用户模式部分的实际自由可用的虚拟地址空间,以字节(byte)为单位。

MEMORYSTATUS结构,
结构的定义如下:
MEMORYSTATUS STRUCT
dwLength DWORD;本结构的长度
dwMemoryLoad DWORD;已用内存的百分比
dwTotalPhys DWORD;物理内存总量
dwAvailPhys DWORD;可用物理内存
dwTotalPageFile DWORD;交换文件总的大小
dwAvailPageFile DWORD;交换文件中空闲部分大小
dwTotalVirtual DWORD;用户可用的地址空间
dwAvailVirtual DWORD;当前空闲的地址空间
MEMORYSTATUS ENDS
分享到:
评论

相关推荐

    C#物理内存检测

    需要注意的是,虽然本文介绍的方法适用于特定的场景,但在实际应用中可能还需要根据具体需求进行调整和优化,例如增加错误处理机制、提高数据读取的准确性和及时性等。此外,考虑到不同操作系统的差异,跨平台应用时...

    C#-获取系统版本,内存大小,显卡类型,CPU型号.doc

    本文档主要介绍了使用 C# 获取系统版本、内存大小、显卡类型和 CPU 型号的方法。通过使用 System.Runtime.InteropServices 命名空间中的 extern 方法,可以获取系统的硬件信息。 1. 获取系统版本 获取系统版本可以...

    C#中调用API,介绍API的使用

    - 示例:`GlobalMemoryStatus`函数可以获取当前系统的物理内存和虚拟内存使用情况。 2. **USER** - 库名:USER32.DLL - 功能:管理用户界面组件,如窗口、菜单、对话框、图标等。 - 示例:`DrawIcon`函数可以在...

    wimc class 说明与使用

    - 函数:`GlobalMemoryStatus` - 示例:通过`GetMemoryInfo`函数获取物理内存和虚拟内存的大小。 4. **获取CPU信息(名称、内核数目、主频)** - 函数:`GetSystemInfo` 和 `GetProcInfo` - 示例:通过`...

    C#_获取系统信息.doc

    本文将详细介绍四种在C#中获取系统信息的方法。 首先,SystemInformation类提供了许多静态方法和属性,可以获取Windows操作系统的设置和状态,如显示器尺寸、操作系统版本、网络状态和硬件性能。例如,`...

    获系统信息.txt

    根据提供的文件信息,本文将详细解释与“获取...以上就是关于如何在Delphi中获取系统信息的相关知识点介绍。这些方法不仅可以帮助开发者更好地了解运行环境,还能用于实现特定的功能需求。希望这些内容能对您有所帮助!

    操作系统 系统内存使用统计

    例如,`GetMemSta`函数调用了`GlobalMemoryStatus`函数,这个函数用于获取当前系统的全局内存状态,包括总物理内存(`dwTotalPhys`)、可用物理内存(`dwAvailPhys`)、总页面文件大小(`dwTotalPageFile`)、可用页面文件...

    C#获取系统信息[归类].pdf

    以下是四种不同的方法,详细介绍了如何使用C#获取不同类型的系统信息。 首先,使用`SystemInformation`类。该类提供了关于Windows操作系统的一系列静态属性和方法,包括但不限于屏幕分辨率、操作系统版本、网络状态...

    Qt 获取Windows内存信息

    本文将详细介绍如何在Qt中获取Windows系统的内存信息。 首先,了解内存信息的基本概念是必要的。在Windows系统中,内存信息通常包括物理内存、虚拟内存、页面文件大小等。物理内存是计算机中实际的RAM(随机访问...

    C#调用api接口

    本文将详细介绍如何在C#中调用API函数获取系统信息。API函数是构筑Windows应用程序的基石,是Windows编程的必备利器。每一种Windows应用程序开发工具都提供了间接或直接调用了Windows API函数的方法,或者是调用...

    API函数获取系统的相关信息

    这篇描述介绍了如何在Visual C#环境中使用API函数获取系统的相关信息。 首先,为了在C#中调用API函数,需要引入`System.Runtime.InteropServices`命名空间。这个命名空间提供了一系列接口和类,使得托管代码(如C#...

    delphi编程技巧

    下面将详细介绍如何通过调用 Windows API 函数 `FindWindow` 和 `ShowWindow` 来实现这一功能。 ##### 代码实现 ```delphi var wndHandle: THandle; wndClass: Array[0..50] of Char; begin StrPCopy(@wndClass...

    Windows服务程序编写

    接下来,我们将详细介绍使用C语言编写Windows服务程序的五个步骤。 ##### 第一步:准备环境与全局定义 - **头文件**:首先,需要包含必要的头文件,如`windows.h`用于访问Windows API,`stdio.h`用于文件操作。 - ...

    用C编写Windows服务程序的五个步骤

    本文详细介绍了如何使用C语言编写一个简单的Windows服务程序,该服务周期性地查询系统的可用物理内存,并将结果记录到日志文件中。通过这个示例,你可以了解Windows服务的基本结构和实现方式,并将其应用于更复杂的...

    windows API

    以下将详细介绍部分常用Windows API的功能及其应用场景。 1. Arc():这个函数用于在窗口上画出一段弧线,可以用来创建各种图形,如扇形、弓形等。 2. Beep():发出指定频率和持续时间的声音,可用于简单的提示...

    Windows 60个常用API

    ### Windows 60个常用API知识点详解 ...以上是Windows操作系统中常见的60个API函数的简要介绍及其应用场景。这些API函数在Windows编程中非常有用,能够帮助开发者更好地控制和管理应用程序的行为。

Global site tag (gtag.js) - Google Analytics