PSS_PROCESS_INFORMATION structure (processsnapshot.h)

Holds process information returned by PssQuerySnapshot.

Syntax

typedef struct {
  DWORD             ExitStatus;
  void              *PebBaseAddress;
  ULONG_PTR         AffinityMask;
  LONG              BasePriority;
  DWORD             ProcessId;
  DWORD             ParentProcessId;
  PSS_PROCESS_FLAGS Flags;
  FILETIME          CreateTime;
  FILETIME          ExitTime;
  FILETIME          KernelTime;
  FILETIME          UserTime;
  DWORD             PriorityClass;
  ULONG_PTR         PeakVirtualSize;
  ULONG_PTR         VirtualSize;
  DWORD             PageFaultCount;
  ULONG_PTR         PeakWorkingSetSize;
  ULONG_PTR         WorkingSetSize;
  ULONG_PTR         QuotaPeakPagedPoolUsage;
  ULONG_PTR         QuotaPagedPoolUsage;
  ULONG_PTR         QuotaPeakNonPagedPoolUsage;
  ULONG_PTR         QuotaNonPagedPoolUsage;
  ULONG_PTR         PagefileUsage;
  ULONG_PTR         PeakPagefileUsage;
  ULONG_PTR         PrivateUsage;
  DWORD             ExecuteFlags;
  wchar_t           ImageFileName[MAX_PATH];
} PSS_PROCESS_INFORMATION;

Members

ExitStatus

The exit code of the process. If the process has not exited, this is set to STILL_ACTIVE (259).

PebBaseAddress

The address to the process environment block (PEB). Reserved for use by the operating system.

AffinityMask

The affinity mask of the process.

BasePriority

The base priority level of the process.

ProcessId

The process ID.

ParentProcessId

The parent process ID.

Flags

Flags about the process. For more information, see PSS_PROCESS_FLAGS.

CreateTime

The time the process was created. For more information, see FILETIME.

ExitTime

If the process exited, the time of the exit. For more information, see FILETIME.

KernelTime

The amount of time the process spent executing in kernel-mode. For more information, see FILETIME.

UserTime

The amount of time the process spent executing in user-mode. For more information, see FILETIME.

PriorityClass

The priority class.

PeakVirtualSize

A memory usage counter. See the GetProcessMemoryInfo function for more information.

VirtualSize

A memory usage counter. See the GetProcessMemoryInfo function for more information.

PageFaultCount

A memory usage counter. See the GetProcessMemoryInfo function for more information.

PeakWorkingSetSize

A memory usage counter. See the GetProcessMemoryInfo function for more information.

WorkingSetSize

A memory usage counter. See the GetProcessMemoryInfo function for more information.

QuotaPeakPagedPoolUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

QuotaPagedPoolUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

QuotaPeakNonPagedPoolUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

QuotaNonPagedPoolUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

PagefileUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

PeakPagefileUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

PrivateUsage

A memory usage counter. See the GetProcessMemoryInfo function for more information.

ExecuteFlags

Reserved for use by the operating system.

ImageFileName[MAX_PATH]

The full path to the process executable. If the path exceeds the allocated buffer size, it is truncated.

Remarks

PssQuerySnapshot returns a PSS_PROCESS_INFORMATION structure when the PSS_QUERY_INFORMATION_CLASS member that the caller provides it is PSS_QUERY_PROCESS_INFORMATION.

Requirements

Requirement Value
Minimum supported client Windows 8.1 [desktop apps only]
Minimum supported server Windows Server 2012 R2 [desktop apps only]
Header processsnapshot.h

See also

Process Snapshotting