1 #[link(name = "windows")]
3 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
4 #[cfg(feature = "Win32_Foundation")]
5 pub fn PssCaptureSnapshot(processhandle
: super::super::super::Foundation
::HANDLE
, captureflags
: PSS_CAPTURE_FLAGS
, threadcontextflags
: u32, snapshothandle
: *mut HPSS
) -> u32;
6 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
7 #[cfg(feature = "Win32_Foundation")]
8 pub fn PssDuplicateSnapshot(sourceprocesshandle
: super::super::super::Foundation
::HANDLE
, snapshothandle
: HPSS
, targetprocesshandle
: super::super::super::Foundation
::HANDLE
, targetsnapshothandle
: *mut HPSS
, flags
: PSS_DUPLICATE_FLAGS
) -> u32;
9 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
10 #[cfg(feature = "Win32_Foundation")]
11 pub fn PssFreeSnapshot(processhandle
: super::super::super::Foundation
::HANDLE
, snapshothandle
: HPSS
) -> u32;
12 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
13 pub fn PssQuerySnapshot(snapshothandle
: HPSS
, informationclass
: PSS_QUERY_INFORMATION_CLASS
, buffer
: *mut ::core
::ffi
::c_void
, bufferlength
: u32) -> u32;
14 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
15 pub fn PssWalkMarkerCreate(allocator
: *const PSS_ALLOCATOR
, walkmarkerhandle
: *mut HPSSWALK
) -> u32;
16 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
17 pub fn PssWalkMarkerFree(walkmarkerhandle
: HPSSWALK
) -> u32;
18 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
19 pub fn PssWalkMarkerGetPosition(walkmarkerhandle
: HPSSWALK
, position
: *mut usize) -> u32;
20 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
21 pub fn PssWalkMarkerSeekToBeginning(walkmarkerhandle
: HPSSWALK
) -> u32;
22 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
23 pub fn PssWalkMarkerSetPosition(walkmarkerhandle
: HPSSWALK
, position
: usize) -> u32;
24 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
25 pub fn PssWalkSnapshot(snapshothandle
: HPSS
, informationclass
: PSS_WALK_INFORMATION_CLASS
, walkmarkerhandle
: HPSSWALK
, buffer
: *mut ::core
::ffi
::c_void
, bufferlength
: u32) -> u32;
27 pub type HPSS
= isize;
28 pub type HPSSWALK
= isize;
30 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
31 pub struct PSS_ALLOCATOR
{
32 pub Context
: *mut ::core
::ffi
::c_void
,
33 pub AllocRoutine
: isize,
34 pub FreeRoutine
: isize,
36 impl ::core
::marker
::Copy
for PSS_ALLOCATOR {}
37 impl ::core
::clone
::Clone
for PSS_ALLOCATOR
{
38 fn clone(&self) -> Self {
43 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
44 pub struct PSS_AUXILIARY_PAGES_INFORMATION
{
45 pub AuxPagesCaptured
: u32,
47 impl ::core
::marker
::Copy
for PSS_AUXILIARY_PAGES_INFORMATION {}
48 impl ::core
::clone
::Clone
for PSS_AUXILIARY_PAGES_INFORMATION
{
49 fn clone(&self) -> Self {
54 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`, `\"Win32_System_Memory\"`*"]
55 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Memory"))]
56 pub struct PSS_AUXILIARY_PAGE_ENTRY
{
57 pub Address
: *mut ::core
::ffi
::c_void
,
58 pub BasicInformation
: super::super::Memory
::MEMORY_BASIC_INFORMATION
,
59 pub CaptureTime
: super::super::super::Foundation
::FILETIME
,
60 pub PageContents
: *mut ::core
::ffi
::c_void
,
63 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Memory"))]
64 impl ::core
::marker
::Copy
for PSS_AUXILIARY_PAGE_ENTRY {}
65 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Memory"))]
66 impl ::core
::clone
::Clone
for PSS_AUXILIARY_PAGE_ENTRY
{
67 fn clone(&self) -> Self {
71 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
72 pub type PSS_CAPTURE_FLAGS
= u32;
73 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
74 pub const PSS_CAPTURE_NONE
: PSS_CAPTURE_FLAGS
= 0u32;
75 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
76 pub const PSS_CAPTURE_VA_CLONE
: PSS_CAPTURE_FLAGS
= 1u32;
77 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
78 pub const PSS_CAPTURE_RESERVED_00000002
: PSS_CAPTURE_FLAGS
= 2u32;
79 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
80 pub const PSS_CAPTURE_HANDLES
: PSS_CAPTURE_FLAGS
= 4u32;
81 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
82 pub const PSS_CAPTURE_HANDLE_NAME_INFORMATION
: PSS_CAPTURE_FLAGS
= 8u32;
83 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
84 pub const PSS_CAPTURE_HANDLE_BASIC_INFORMATION
: PSS_CAPTURE_FLAGS
= 16u32;
85 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
86 pub const PSS_CAPTURE_HANDLE_TYPE_SPECIFIC_INFORMATION
: PSS_CAPTURE_FLAGS
= 32u32;
87 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
88 pub const PSS_CAPTURE_HANDLE_TRACE
: PSS_CAPTURE_FLAGS
= 64u32;
89 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
90 pub const PSS_CAPTURE_THREADS
: PSS_CAPTURE_FLAGS
= 128u32;
91 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
92 pub const PSS_CAPTURE_THREAD_CONTEXT
: PSS_CAPTURE_FLAGS
= 256u32;
93 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
94 pub const PSS_CAPTURE_THREAD_CONTEXT_EXTENDED
: PSS_CAPTURE_FLAGS
= 512u32;
95 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
96 pub const PSS_CAPTURE_RESERVED_00000400
: PSS_CAPTURE_FLAGS
= 1024u32;
97 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
98 pub const PSS_CAPTURE_VA_SPACE
: PSS_CAPTURE_FLAGS
= 2048u32;
99 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
100 pub const PSS_CAPTURE_VA_SPACE_SECTION_INFORMATION
: PSS_CAPTURE_FLAGS
= 4096u32;
101 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
102 pub const PSS_CAPTURE_IPT_TRACE
: PSS_CAPTURE_FLAGS
= 8192u32;
103 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
104 pub const PSS_CAPTURE_RESERVED_00004000
: PSS_CAPTURE_FLAGS
= 16384u32;
105 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
106 pub const PSS_CREATE_BREAKAWAY_OPTIONAL
: PSS_CAPTURE_FLAGS
= 67108864u32;
107 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
108 pub const PSS_CREATE_BREAKAWAY
: PSS_CAPTURE_FLAGS
= 134217728u32;
109 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
110 pub const PSS_CREATE_FORCE_BREAKAWAY
: PSS_CAPTURE_FLAGS
= 268435456u32;
111 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
112 pub const PSS_CREATE_USE_VM_ALLOCATIONS
: PSS_CAPTURE_FLAGS
= 536870912u32;
113 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
114 pub const PSS_CREATE_MEASURE_PERFORMANCE
: PSS_CAPTURE_FLAGS
= 1073741824u32;
115 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
116 pub const PSS_CREATE_RELEASE_SECTION
: PSS_CAPTURE_FLAGS
= 2147483648u32;
117 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
118 pub type PSS_DUPLICATE_FLAGS
= u32;
119 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
120 pub const PSS_DUPLICATE_NONE
: PSS_DUPLICATE_FLAGS
= 0u32;
121 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
122 pub const PSS_DUPLICATE_CLOSE_SOURCE
: PSS_DUPLICATE_FLAGS
= 1u32;
124 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
125 #[cfg(feature = "Win32_Foundation")]
126 pub struct PSS_HANDLE_ENTRY
{
127 pub Handle
: super::super::super::Foundation
::HANDLE
,
128 pub Flags
: PSS_HANDLE_FLAGS
,
129 pub ObjectType
: PSS_OBJECT_TYPE
,
130 pub CaptureTime
: super::super::super::Foundation
::FILETIME
,
132 pub GrantedAccess
: u32,
133 pub HandleCount
: u32,
134 pub PointerCount
: u32,
135 pub PagedPoolCharge
: u32,
136 pub NonPagedPoolCharge
: u32,
137 pub CreationTime
: super::super::super::Foundation
::FILETIME
,
138 pub TypeNameLength
: u16,
139 pub TypeName
: ::windows_sys
::core
::PCWSTR
,
140 pub ObjectNameLength
: u16,
141 pub ObjectName
: ::windows_sys
::core
::PCWSTR
,
142 pub TypeSpecificInformation
: PSS_HANDLE_ENTRY_0
,
144 #[cfg(feature = "Win32_Foundation")]
145 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY {}
146 #[cfg(feature = "Win32_Foundation")]
147 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY
{
148 fn clone(&self) -> Self {
153 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
154 #[cfg(feature = "Win32_Foundation")]
155 pub union PSS_HANDLE_ENTRY_0
{
156 pub Process
: PSS_HANDLE_ENTRY_0_2
,
157 pub Thread
: PSS_HANDLE_ENTRY_0_5
,
158 pub Mutant
: PSS_HANDLE_ENTRY_0_1
,
159 pub Event
: PSS_HANDLE_ENTRY_0_0
,
160 pub Section
: PSS_HANDLE_ENTRY_0_3
,
161 pub Semaphore
: PSS_HANDLE_ENTRY_0_4
,
163 #[cfg(feature = "Win32_Foundation")]
164 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0 {}
165 #[cfg(feature = "Win32_Foundation")]
166 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0
{
167 fn clone(&self) -> Self {
172 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
173 #[cfg(feature = "Win32_Foundation")]
174 pub struct PSS_HANDLE_ENTRY_0_0
{
175 pub ManualReset
: super::super::super::Foundation
::BOOL
,
176 pub Signaled
: super::super::super::Foundation
::BOOL
,
178 #[cfg(feature = "Win32_Foundation")]
179 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0_0 {}
180 #[cfg(feature = "Win32_Foundation")]
181 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0_0
{
182 fn clone(&self) -> Self {
187 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
188 #[cfg(feature = "Win32_Foundation")]
189 pub struct PSS_HANDLE_ENTRY_0_1
{
190 pub CurrentCount
: i32,
191 pub Abandoned
: super::super::super::Foundation
::BOOL
,
192 pub OwnerProcessId
: u32,
193 pub OwnerThreadId
: u32,
195 #[cfg(feature = "Win32_Foundation")]
196 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0_1 {}
197 #[cfg(feature = "Win32_Foundation")]
198 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0_1
{
199 fn clone(&self) -> Self {
204 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
205 #[cfg(feature = "Win32_Foundation")]
206 pub struct PSS_HANDLE_ENTRY_0_2
{
208 pub PebBaseAddress
: *mut ::core
::ffi
::c_void
,
209 pub AffinityMask
: usize,
210 pub BasePriority
: i32,
212 pub ParentProcessId
: u32,
215 #[cfg(feature = "Win32_Foundation")]
216 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0_2 {}
217 #[cfg(feature = "Win32_Foundation")]
218 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0_2
{
219 fn clone(&self) -> Self {
224 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
225 #[cfg(feature = "Win32_Foundation")]
226 pub struct PSS_HANDLE_ENTRY_0_3
{
227 pub BaseAddress
: *mut ::core
::ffi
::c_void
,
228 pub AllocationAttributes
: u32,
229 pub MaximumSize
: i64,
231 #[cfg(feature = "Win32_Foundation")]
232 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0_3 {}
233 #[cfg(feature = "Win32_Foundation")]
234 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0_3
{
235 fn clone(&self) -> Self {
240 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
241 #[cfg(feature = "Win32_Foundation")]
242 pub struct PSS_HANDLE_ENTRY_0_4
{
243 pub CurrentCount
: i32,
244 pub MaximumCount
: i32,
246 #[cfg(feature = "Win32_Foundation")]
247 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0_4 {}
248 #[cfg(feature = "Win32_Foundation")]
249 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0_4
{
250 fn clone(&self) -> Self {
255 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
256 #[cfg(feature = "Win32_Foundation")]
257 pub struct PSS_HANDLE_ENTRY_0_5
{
259 pub TebBaseAddress
: *mut ::core
::ffi
::c_void
,
262 pub AffinityMask
: usize,
264 pub BasePriority
: i32,
265 pub Win32StartAddress
: *mut ::core
::ffi
::c_void
,
267 #[cfg(feature = "Win32_Foundation")]
268 impl ::core
::marker
::Copy
for PSS_HANDLE_ENTRY_0_5 {}
269 #[cfg(feature = "Win32_Foundation")]
270 impl ::core
::clone
::Clone
for PSS_HANDLE_ENTRY_0_5
{
271 fn clone(&self) -> Self {
275 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
276 pub type PSS_HANDLE_FLAGS
= u32;
277 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
278 pub const PSS_HANDLE_NONE
: PSS_HANDLE_FLAGS
= 0u32;
279 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
280 pub const PSS_HANDLE_HAVE_TYPE
: PSS_HANDLE_FLAGS
= 1u32;
281 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
282 pub const PSS_HANDLE_HAVE_NAME
: PSS_HANDLE_FLAGS
= 2u32;
283 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
284 pub const PSS_HANDLE_HAVE_BASIC_INFORMATION
: PSS_HANDLE_FLAGS
= 4u32;
285 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
286 pub const PSS_HANDLE_HAVE_TYPE_SPECIFIC_INFORMATION
: PSS_HANDLE_FLAGS
= 8u32;
288 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
289 pub struct PSS_HANDLE_INFORMATION
{
290 pub HandlesCaptured
: u32,
292 impl ::core
::marker
::Copy
for PSS_HANDLE_INFORMATION {}
293 impl ::core
::clone
::Clone
for PSS_HANDLE_INFORMATION
{
294 fn clone(&self) -> Self {
299 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
300 #[cfg(feature = "Win32_Foundation")]
301 pub struct PSS_HANDLE_TRACE_INFORMATION
{
302 pub SectionHandle
: super::super::super::Foundation
::HANDLE
,
305 #[cfg(feature = "Win32_Foundation")]
306 impl ::core
::marker
::Copy
for PSS_HANDLE_TRACE_INFORMATION {}
307 #[cfg(feature = "Win32_Foundation")]
308 impl ::core
::clone
::Clone
for PSS_HANDLE_TRACE_INFORMATION
{
309 fn clone(&self) -> Self {
313 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
314 pub type PSS_OBJECT_TYPE
= i32;
315 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
316 pub const PSS_OBJECT_TYPE_UNKNOWN
: PSS_OBJECT_TYPE
= 0i32;
317 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
318 pub const PSS_OBJECT_TYPE_PROCESS
: PSS_OBJECT_TYPE
= 1i32;
319 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
320 pub const PSS_OBJECT_TYPE_THREAD
: PSS_OBJECT_TYPE
= 2i32;
321 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
322 pub const PSS_OBJECT_TYPE_MUTANT
: PSS_OBJECT_TYPE
= 3i32;
323 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
324 pub const PSS_OBJECT_TYPE_EVENT
: PSS_OBJECT_TYPE
= 4i32;
325 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
326 pub const PSS_OBJECT_TYPE_SECTION
: PSS_OBJECT_TYPE
= 5i32;
327 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
328 pub const PSS_OBJECT_TYPE_SEMAPHORE
: PSS_OBJECT_TYPE
= 6i32;
330 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
331 pub struct PSS_PERFORMANCE_COUNTERS
{
332 pub TotalCycleCount
: u64,
333 pub TotalWallClockPeriod
: u64,
334 pub VaCloneCycleCount
: u64,
335 pub VaCloneWallClockPeriod
: u64,
336 pub VaSpaceCycleCount
: u64,
337 pub VaSpaceWallClockPeriod
: u64,
338 pub AuxPagesCycleCount
: u64,
339 pub AuxPagesWallClockPeriod
: u64,
340 pub HandlesCycleCount
: u64,
341 pub HandlesWallClockPeriod
: u64,
342 pub ThreadsCycleCount
: u64,
343 pub ThreadsWallClockPeriod
: u64,
345 impl ::core
::marker
::Copy
for PSS_PERFORMANCE_COUNTERS {}
346 impl ::core
::clone
::Clone
for PSS_PERFORMANCE_COUNTERS
{
347 fn clone(&self) -> Self {
351 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
352 pub const PSS_PERF_RESOLUTION
: u32 = 1000000u32;
353 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
354 pub type PSS_PROCESS_FLAGS
= u32;
355 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
356 pub const PSS_PROCESS_FLAGS_NONE
: PSS_PROCESS_FLAGS
= 0u32;
357 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
358 pub const PSS_PROCESS_FLAGS_PROTECTED
: PSS_PROCESS_FLAGS
= 1u32;
359 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
360 pub const PSS_PROCESS_FLAGS_WOW64
: PSS_PROCESS_FLAGS
= 2u32;
361 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
362 pub const PSS_PROCESS_FLAGS_RESERVED_03
: PSS_PROCESS_FLAGS
= 4u32;
363 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
364 pub const PSS_PROCESS_FLAGS_RESERVED_04
: PSS_PROCESS_FLAGS
= 8u32;
365 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
366 pub const PSS_PROCESS_FLAGS_FROZEN
: PSS_PROCESS_FLAGS
= 16u32;
368 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
369 #[cfg(feature = "Win32_Foundation")]
370 pub struct PSS_PROCESS_INFORMATION
{
372 pub PebBaseAddress
: *mut ::core
::ffi
::c_void
,
373 pub AffinityMask
: usize,
374 pub BasePriority
: i32,
376 pub ParentProcessId
: u32,
377 pub Flags
: PSS_PROCESS_FLAGS
,
378 pub CreateTime
: super::super::super::Foundation
::FILETIME
,
379 pub ExitTime
: super::super::super::Foundation
::FILETIME
,
380 pub KernelTime
: super::super::super::Foundation
::FILETIME
,
381 pub UserTime
: super::super::super::Foundation
::FILETIME
,
382 pub PriorityClass
: u32,
383 pub PeakVirtualSize
: usize,
384 pub VirtualSize
: usize,
385 pub PageFaultCount
: u32,
386 pub PeakWorkingSetSize
: usize,
387 pub WorkingSetSize
: usize,
388 pub QuotaPeakPagedPoolUsage
: usize,
389 pub QuotaPagedPoolUsage
: usize,
390 pub QuotaPeakNonPagedPoolUsage
: usize,
391 pub QuotaNonPagedPoolUsage
: usize,
392 pub PagefileUsage
: usize,
393 pub PeakPagefileUsage
: usize,
394 pub PrivateUsage
: usize,
395 pub ExecuteFlags
: u32,
396 pub ImageFileName
: [u16; 260],
398 #[cfg(feature = "Win32_Foundation")]
399 impl ::core
::marker
::Copy
for PSS_PROCESS_INFORMATION {}
400 #[cfg(feature = "Win32_Foundation")]
401 impl ::core
::clone
::Clone
for PSS_PROCESS_INFORMATION
{
402 fn clone(&self) -> Self {
406 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
407 pub type PSS_QUERY_INFORMATION_CLASS
= i32;
408 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
409 pub const PSS_QUERY_PROCESS_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 0i32;
410 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
411 pub const PSS_QUERY_VA_CLONE_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 1i32;
412 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
413 pub const PSS_QUERY_AUXILIARY_PAGES_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 2i32;
414 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
415 pub const PSS_QUERY_VA_SPACE_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 3i32;
416 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
417 pub const PSS_QUERY_HANDLE_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 4i32;
418 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
419 pub const PSS_QUERY_THREAD_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 5i32;
420 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
421 pub const PSS_QUERY_HANDLE_TRACE_INFORMATION
: PSS_QUERY_INFORMATION_CLASS
= 6i32;
422 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
423 pub const PSS_QUERY_PERFORMANCE_COUNTERS
: PSS_QUERY_INFORMATION_CLASS
= 7i32;
425 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`, `\"Win32_System_Diagnostics_Debug\"`, `\"Win32_System_Kernel\"`*"]
426 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug", feature = "Win32_System_Kernel"))]
427 pub struct PSS_THREAD_ENTRY
{
429 pub TebBaseAddress
: *mut ::core
::ffi
::c_void
,
432 pub AffinityMask
: usize,
434 pub BasePriority
: i32,
435 pub LastSyscallFirstArgument
: *mut ::core
::ffi
::c_void
,
436 pub LastSyscallNumber
: u16,
437 pub CreateTime
: super::super::super::Foundation
::FILETIME
,
438 pub ExitTime
: super::super::super::Foundation
::FILETIME
,
439 pub KernelTime
: super::super::super::Foundation
::FILETIME
,
440 pub UserTime
: super::super::super::Foundation
::FILETIME
,
441 pub Win32StartAddress
: *mut ::core
::ffi
::c_void
,
442 pub CaptureTime
: super::super::super::Foundation
::FILETIME
,
443 pub Flags
: PSS_THREAD_FLAGS
,
444 pub SuspendCount
: u16,
445 pub SizeOfContextRecord
: u16,
446 pub ContextRecord
: *mut super::Debug
::CONTEXT
,
448 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug", feature = "Win32_System_Kernel"))]
449 impl ::core
::marker
::Copy
for PSS_THREAD_ENTRY {}
450 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug", feature = "Win32_System_Kernel"))]
451 impl ::core
::clone
::Clone
for PSS_THREAD_ENTRY
{
452 fn clone(&self) -> Self {
456 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
457 pub type PSS_THREAD_FLAGS
= u32;
458 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
459 pub const PSS_THREAD_FLAGS_NONE
: PSS_THREAD_FLAGS
= 0u32;
460 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
461 pub const PSS_THREAD_FLAGS_TERMINATED
: PSS_THREAD_FLAGS
= 1u32;
463 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
464 pub struct PSS_THREAD_INFORMATION
{
465 pub ThreadsCaptured
: u32,
466 pub ContextLength
: u32,
468 impl ::core
::marker
::Copy
for PSS_THREAD_INFORMATION {}
469 impl ::core
::clone
::Clone
for PSS_THREAD_INFORMATION
{
470 fn clone(&self) -> Self {
475 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`, `\"Win32_Foundation\"`*"]
476 #[cfg(feature = "Win32_Foundation")]
477 pub struct PSS_VA_CLONE_INFORMATION
{
478 pub VaCloneHandle
: super::super::super::Foundation
::HANDLE
,
480 #[cfg(feature = "Win32_Foundation")]
481 impl ::core
::marker
::Copy
for PSS_VA_CLONE_INFORMATION {}
482 #[cfg(feature = "Win32_Foundation")]
483 impl ::core
::clone
::Clone
for PSS_VA_CLONE_INFORMATION
{
484 fn clone(&self) -> Self {
489 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
490 pub struct PSS_VA_SPACE_ENTRY
{
491 pub BaseAddress
: *mut ::core
::ffi
::c_void
,
492 pub AllocationBase
: *mut ::core
::ffi
::c_void
,
493 pub AllocationProtect
: u32,
494 pub RegionSize
: usize,
498 pub TimeDateStamp
: u32,
499 pub SizeOfImage
: u32,
500 pub ImageBase
: *mut ::core
::ffi
::c_void
,
502 pub MappedFileNameLength
: u16,
503 pub MappedFileName
: ::windows_sys
::core
::PCWSTR
,
505 impl ::core
::marker
::Copy
for PSS_VA_SPACE_ENTRY {}
506 impl ::core
::clone
::Clone
for PSS_VA_SPACE_ENTRY
{
507 fn clone(&self) -> Self {
512 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
513 pub struct PSS_VA_SPACE_INFORMATION
{
514 pub RegionCount
: u32,
516 impl ::core
::marker
::Copy
for PSS_VA_SPACE_INFORMATION {}
517 impl ::core
::clone
::Clone
for PSS_VA_SPACE_INFORMATION
{
518 fn clone(&self) -> Self {
522 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
523 pub type PSS_WALK_INFORMATION_CLASS
= i32;
524 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
525 pub const PSS_WALK_AUXILIARY_PAGES
: PSS_WALK_INFORMATION_CLASS
= 0i32;
526 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
527 pub const PSS_WALK_VA_SPACE
: PSS_WALK_INFORMATION_CLASS
= 1i32;
528 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
529 pub const PSS_WALK_HANDLES
: PSS_WALK_INFORMATION_CLASS
= 2i32;
530 #[doc = "*Required features: `\"Win32_System_Diagnostics_ProcessSnapshotting\"`*"]
531 pub const PSS_WALK_THREADS
: PSS_WALK_INFORMATION_CLASS
= 3i32;