@@ -446,6 +446,13 @@ public struct ProcessCombineSecurityDomainInformation
446446 public IntPtr ProcessHandle ;
447447 }
448448
449+ [ StructLayout ( LayoutKind . Sequential ) ]
450+ public struct ProcessCycleTimeInformation
451+ {
452+ public long AccumulatedCycles ;
453+ public long CurrentCycleCount ;
454+ }
455+
449456 public enum ProcessInformationClass
450457 {
451458 ProcessBasicInformation ,
@@ -547,7 +554,9 @@ public enum ProcessInformationClass
547554 ProcessEnableLogging ,
548555 ProcessLeapSecondInformation ,
549556 ProcessFiberShadowStackAllocation ,
550- ProcessFreeFiberShadowStackAllocation
557+ ProcessFreeFiberShadowStackAllocation ,
558+ ProcessAltSystemCallInformation ,
559+ ProcessDynamicEHContinuationTargets ,
551560 }
552561
553562 public enum ProcessMitigationPolicy
@@ -701,6 +710,63 @@ public struct ProcessRevokeFileHandlesInformation
701710 public UnicodeString TargetDevicePath ;
702711 }
703712
713+ [ StructLayout ( LayoutKind . Sequential , CharSet = CharSet . Unicode ) ]
714+ public struct RateQuotaLimit
715+ {
716+ public int RateData ;
717+ public int RatePercent => RateData & 0x7F ;
718+
719+ public override string ToString ( )
720+ {
721+ return $ "{ RatePercent } %";
722+ }
723+ }
724+
725+ [ Flags ]
726+ public enum QuotaLimitsExFlags
727+ {
728+ None = 0 ,
729+ MinEnable = 1 ,
730+ MinDisable = 2 ,
731+ MaxEnable = 4 ,
732+ MaxDisable = 8 ,
733+ UseDefaultLimits = 0x10
734+ }
735+
736+ [ StructLayout ( LayoutKind . Sequential , CharSet = CharSet . Unicode ) ]
737+ public struct QuotaLimitsEx
738+ {
739+ public IntPtr PagedPoolLimit ;
740+ public IntPtr NonPagedPoolLimit ;
741+ public IntPtr MinimumWorkingSetSize ;
742+ public IntPtr MaximumWorkingSetSize ;
743+ public IntPtr PagefileLimit ;
744+ public LargeIntegerStruct TimeLimit ;
745+ public IntPtr WorkingSetLimit ;
746+ public IntPtr Reserved2 ;
747+ public IntPtr Reserved3 ;
748+ public IntPtr Reserved4 ;
749+ public QuotaLimitsExFlags Flags ;
750+ public RateQuotaLimit CpuRateLimit ;
751+ }
752+
753+ [ StructLayout ( LayoutKind . Sequential , CharSet = CharSet . Unicode ) ]
754+ public struct VmCountersEx
755+ {
756+ public IntPtr PeakVirtualSize ;
757+ public IntPtr VirtualSize ;
758+ public int PageFaultCount ;
759+ public IntPtr PeakWorkingSetSize ;
760+ public IntPtr WorkingSetSize ;
761+ public IntPtr QuotaPeakPagedPoolUsage ;
762+ public IntPtr QuotaPagedPoolUsage ;
763+ public IntPtr QuotaPeakNonPagedPoolUsage ;
764+ public IntPtr QuotaNonPagedPoolUsage ;
765+ public IntPtr PagefileUsage ;
766+ public IntPtr PeakPagefileUsage ;
767+ public IntPtr PrivateUsage ;
768+ }
769+
704770 public static partial class NtSystemCalls
705771 {
706772 [ DllImport ( "ntdll.dll" ) ]
0 commit comments