ProcessExplorer somehow obtain this value and show it on Performance tab for each process... How to get it using Win32 API?
Solution: In `Peak Private Bytes' field, Process Explorer actually shows "Process\...\Page File Bytes Peak" performance counter. This value could be easily retrieved with PSAPI function GetProcessMemoryInfo.
GetProcessMemoryInfo
gets you this:
The current amount of memory that cannot be shared with other processes, in bytes. Private bytes include memory that is committed and marked MEM_PRIVATE, data that is not mapped, and executable pages that have been written to.
The info on this thread may be out of date, but it does suggest that this data is extracted via the kernel, and is not publicly available via Win32.
来源:https://stackoverflow.com/questions/7878685/getting-peak-private-bytes-value-for-process-in-windows