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# 获取系统版本、内存大小、显卡类型和 CPU 型号的方法。通过使用 System.Runtime.InteropServices 命名空间中的 extern 方法,可以获取系统的硬件信息。 1. 获取系统版本 获取系统版本可以...
- 示例:`GlobalMemoryStatus`函数可以获取当前系统的物理内存和虚拟内存使用情况。 2. **USER** - 库名:USER32.DLL - 功能:管理用户界面组件,如窗口、菜单、对话框、图标等。 - 示例:`DrawIcon`函数可以在...
- 函数:`GlobalMemoryStatus` - 示例:通过`GetMemoryInfo`函数获取物理内存和虚拟内存的大小。 4. **获取CPU信息(名称、内核数目、主频)** - 函数:`GetSystemInfo` 和 `GetProcInfo` - 示例:通过`...
本文将详细介绍四种在C#中获取系统信息的方法。 首先,SystemInformation类提供了许多静态方法和属性,可以获取Windows操作系统的设置和状态,如显示器尺寸、操作系统版本、网络状态和硬件性能。例如,`...
根据提供的文件信息,本文将详细解释与“获取...以上就是关于如何在Delphi中获取系统信息的相关知识点介绍。这些方法不仅可以帮助开发者更好地了解运行环境,还能用于实现特定的功能需求。希望这些内容能对您有所帮助!
例如,`GetMemSta`函数调用了`GlobalMemoryStatus`函数,这个函数用于获取当前系统的全局内存状态,包括总物理内存(`dwTotalPhys`)、可用物理内存(`dwAvailPhys`)、总页面文件大小(`dwTotalPageFile`)、可用页面文件...
以下是四种不同的方法,详细介绍了如何使用C#获取不同类型的系统信息。 首先,使用`SystemInformation`类。该类提供了关于Windows操作系统的一系列静态属性和方法,包括但不限于屏幕分辨率、操作系统版本、网络状态...
本文将详细介绍如何在Qt中获取Windows系统的内存信息。 首先,了解内存信息的基本概念是必要的。在Windows系统中,内存信息通常包括物理内存、虚拟内存、页面文件大小等。物理内存是计算机中实际的RAM(随机访问...
本文将详细介绍如何在C#中调用API函数获取系统信息。API函数是构筑Windows应用程序的基石,是Windows编程的必备利器。每一种Windows应用程序开发工具都提供了间接或直接调用了Windows API函数的方法,或者是调用...
这篇描述介绍了如何在Visual C#环境中使用API函数获取系统的相关信息。 首先,为了在C#中调用API函数,需要引入`System.Runtime.InteropServices`命名空间。这个命名空间提供了一系列接口和类,使得托管代码(如C#...
下面将详细介绍如何通过调用 Windows API 函数 `FindWindow` 和 `ShowWindow` 来实现这一功能。 ##### 代码实现 ```delphi var wndHandle: THandle; wndClass: Array[0..50] of Char; begin StrPCopy(@wndClass...
接下来,我们将详细介绍使用C语言编写Windows服务程序的五个步骤。 ##### 第一步:准备环境与全局定义 - **头文件**:首先,需要包含必要的头文件,如`windows.h`用于访问Windows API,`stdio.h`用于文件操作。 - ...
本文详细介绍了如何使用C语言编写一个简单的Windows服务程序,该服务周期性地查询系统的可用物理内存,并将结果记录到日志文件中。通过这个示例,你可以了解Windows服务的基本结构和实现方式,并将其应用于更复杂的...
以下将详细介绍部分常用Windows API的功能及其应用场景。 1. Arc():这个函数用于在窗口上画出一段弧线,可以用来创建各种图形,如扇形、弓形等。 2. Beep():发出指定频率和持续时间的声音,可用于简单的提示...
### Windows 60个常用API知识点详解 ...以上是Windows操作系统中常见的60个API函数的简要介绍及其应用场景。这些API函数在Windows编程中非常有用,能够帮助开发者更好地控制和管理应用程序的行为。