看来,GlobalMemoryStatusEx和GetPerformanceInfo Windows API都会报告页面文件的当前大小,但可以配置页面文件(每个磁盘)以便成长达到一定限度。 是否有API来检索该限制,以便我可以计算整个系统的最大可能提交大小(提供的页面文件设置保持不变)?
答案 0 :(得分:1)
似乎可以通过WMI(COM和/或命令行):
wmic pagefile list /format:list
wmic pagefileset list /format:list
但也可以通过读取/解析此注册表设置以依赖于平台的方式完成:
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PagingFiles
如上所述here,此格式为REG_MULTI_SZ(每页文件一行):
<page-file> [<initial-size> <max-size>]
例如:
c:\pagefile.sys 1024 8192
如果是系统管理的页面文件,则值为:
?:\pagefile.sys
在系统管理的情况下,大小受系统驱动器上的可用空间限制(对于Hyper-V VM而言不完全正确)。
*注册表设置似乎至少在Windows XP,7,2012和10(32/64位,PC)中有效。