12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package winapi
- const PROCESS_ALL_ACCESS uint32 = 2097151
- const (
- PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE = 0x20016
- PROC_THREAD_ATTRIBUTE_JOB_LIST = 0x2000D
- )
- // ProcessVmCounters corresponds to the _VM_COUNTERS_EX and _VM_COUNTERS_EX2 structures.
- const ProcessVmCounters = 3
- // __kernel_entry NTSTATUS NtQueryInformationProcess(
- // [in] HANDLE ProcessHandle,
- // [in] PROCESSINFOCLASS ProcessInformationClass,
- // [out] PVOID ProcessInformation,
- // [in] ULONG ProcessInformationLength,
- // [out, optional] PULONG ReturnLength
- // );
- //
- //sys NtQueryInformationProcess(processHandle windows.Handle, processInfoClass uint32, processInfo unsafe.Pointer, processInfoLength uint32, returnLength *uint32) (status uint32) = ntdll.NtQueryInformationProcess
- // typedef struct _VM_COUNTERS_EX {
- // SIZE_T PeakVirtualSize;
- // SIZE_T VirtualSize;
- // ULONG PageFaultCount;
- // SIZE_T PeakWorkingSetSize;
- // SIZE_T WorkingSetSize;
- // SIZE_T QuotaPeakPagedPoolUsage;
- // SIZE_T QuotaPagedPoolUsage;
- // SIZE_T QuotaPeakNonPagedPoolUsage;
- // SIZE_T QuotaNonPagedPoolUsage;
- // SIZE_T PagefileUsage;
- // SIZE_T PeakPagefileUsage;
- // SIZE_T PrivateUsage;
- // } VM_COUNTERS_EX, *PVM_COUNTERS_EX;
- type VM_COUNTERS_EX struct {
- PeakVirtualSize uintptr
- VirtualSize uintptr
- PageFaultCount uint32
- PeakWorkingSetSize uintptr
- WorkingSetSize uintptr
- QuotaPeakPagedPoolUsage uintptr
- QuotaPagedPoolUsage uintptr
- QuotaPeakNonPagedPoolUsage uintptr
- QuotaNonPagedPoolUsage uintptr
- PagefileUsage uintptr
- PeakPagefileUsage uintptr
- PrivateUsage uintptr
- }
- // typedef struct _VM_COUNTERS_EX2 {
- // VM_COUNTERS_EX CountersEx;
- // SIZE_T PrivateWorkingSetSize;
- // SIZE_T SharedCommitUsage;
- // } VM_COUNTERS_EX2, *PVM_COUNTERS_EX2;
- type VM_COUNTERS_EX2 struct {
- CountersEx VM_COUNTERS_EX
- PrivateWorkingSetSize uintptr
- SharedCommitUsage uintptr
- }
|