diff options
author | Giampaolo Rodola <g.rodola@gmail.com> | 2019-02-28 06:19:55 -0800 |
---|---|---|
committer | Giampaolo Rodola <g.rodola@gmail.com> | 2019-02-28 06:19:55 -0800 |
commit | 4fbc1b4e453312ec7d8de7a0393c76df3a2feb2e (patch) | |
tree | 3bcba546eddd379ad4617b6c00945bfb061ebfde | |
parent | 5964d6c2fc2a879ad1506085c9631ee0b1cd1fa5 (diff) | |
download | psutil-4fbc1b4e453312ec7d8de7a0393c76df3a2feb2e.tar.gz |
set proper SYSTEM_PROCESS_INFORMATION struct from PH
-rw-r--r-- | psutil/arch/windows/ntextapi.h | 16 | ||||
-rw-r--r-- | psutil/arch/windows/process_info.c | 2 |
2 files changed, 10 insertions, 8 deletions
diff --git a/psutil/arch/windows/ntextapi.h b/psutil/arch/windows/ntextapi.h index 4a351b41..df5cfe11 100644 --- a/psutil/arch/windows/ntextapi.h +++ b/psutil/arch/windows/ntextapi.h @@ -283,22 +283,24 @@ typedef struct _SYSTEM_EXTENDED_THREAD_INFORMATION { typedef struct _SYSTEM_PROCESS_INFORMATION2 { ULONG NextEntryOffset; ULONG NumberOfThreads; - LARGE_INTEGER SpareLi1; - LARGE_INTEGER SpareLi2; - LARGE_INTEGER SpareLi3; + LARGE_INTEGER WorkingSetPrivateSize; // since Vista + ULONG HardFaultCount; // since Win7 + ULONG NumberOfThreadsHighWatermark; // since Win7 + ULONGLONG CycleTime; // since Win7 LARGE_INTEGER CreateTime; LARGE_INTEGER UserTime; LARGE_INTEGER KernelTime; UNICODE_STRING ImageName; - LONG BasePriority; + KPRIORITY BasePriority; HANDLE UniqueProcessId; HANDLE InheritedFromUniqueProcessId; ULONG HandleCount; ULONG SessionId; - ULONG_PTR PageDirectoryBase; + // since VISTA (requires SystemExtendedProcessInformation) + ULONG_PTR UniqueProcessKey; SIZE_T PeakVirtualSize; SIZE_T VirtualSize; - DWORD PageFaultCount; + ULONG PageFaultCount; SIZE_T PeakWorkingSetSize; SIZE_T WorkingSetSize; SIZE_T QuotaPeakPagedPoolUsage; @@ -314,7 +316,7 @@ typedef struct _SYSTEM_PROCESS_INFORMATION2 { LARGE_INTEGER ReadTransferCount; LARGE_INTEGER WriteTransferCount; LARGE_INTEGER OtherTransferCount; - SYSTEM_THREAD_INFORMATION Threads[1]; + SYSTEM_THREAD_INFORMATION Threads[1]; // SystemProcessInformation } SYSTEM_PROCESS_INFORMATION2, *PSYSTEM_PROCESS_INFORMATION2; #define SYSTEM_PROCESS_INFORMATION SYSTEM_PROCESS_INFORMATION2 diff --git a/psutil/arch/windows/process_info.c b/psutil/arch/windows/process_info.c index 3966bc71..22b4ee91 100644 --- a/psutil/arch/windows/process_info.c +++ b/psutil/arch/windows/process_info.c @@ -747,7 +747,7 @@ psutil_get_cmdline_data(long pid, WCHAR **pdata, SIZE_T *psize) { char * cmdline_buffer = NULL; WCHAR * cmdline_buffer_wchar = NULL; PUNICODE_STRING tmp = NULL; - DWORD string_size; + size_t string_size; int ProcessCommandLineInformation = 60; cmdline_buffer = calloc(ret_length, 1); |