// Copyright (C) 1995-1997 Microsoft Corporation. All Rights Reserved. // // MODULE: relstat.idl // // PURPOSE: Relstat RPC service .idl file. This defines the wire // "contract" between a client and server using this // interface. All data types and functions (methods, // operations) that go over the wire must be defined here. // // [ uuid(7f4833fa-fce8-11d2-b8de-0000f8757e72), version(1.0), pointer_default(unique) ] interface RelstatRPCService { import "wtypes.idl"; typedef struct _RELSTAT_PROCESS_INFO{ ULONG NumberOfThreads; LARGE_INTEGER CreateTime; LARGE_INTEGER UserTime; LARGE_INTEGER KernelTime; LPWSTR szImageName; LONG BasePriority; //KPRIORITY in ntexapi.h DWORD UniqueProcessId; //HANDLE in ntexapi.h DWORD InheritedFromUniqueProcessId; //HANDLE in ntexapi.h ULONG HandleCount; ULONG SessionId; 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 PrivatePageCount; LARGE_INTEGER ReadOperationCount; LARGE_INTEGER WriteOperationCount; LARGE_INTEGER OtherOperationCount; LARGE_INTEGER ReadTransferCount; LARGE_INTEGER WriteTransferCount; LARGE_INTEGER OtherTransferCount; ULONG GdiHandleCount; ULONG UsrHandleCount; } RELSTAT_PROCESS_INFO, *PRELSTAT_PROCESS_INFO; typedef struct _RELSTAT_POOLTAG_INFO { UCHAR Tag[4]; ULONG PagedAllocs; ULONG PagedFrees; SIZE_T PagedUsed; ULONG NonPagedAllocs; ULONG NonPagedFrees; SIZE_T NonPagedUsed; } RELSTAT_POOLTAG_INFO, *PRELSTAT_POOLTAG_INFO; error_status_t RelStatProcessInfo( [in] handle_t Binding, [in] long Pid, [in, out] unsigned long *pNumberOfProcesses, [out, size_is(,*pNumberOfProcesses)] PRELSTAT_PROCESS_INFO *ppRelStatInfo ); error_status_t RelStatPoolTagInfo( [in] handle_t Binding, [in] LPSTR szTagName, [in, out] unsigned long* pNumberOfTags, [out, size_is(,*pNumberOfTags)] PRELSTAT_POOLTAG_INFO *ppRelStatPoolInfo ); error_status_t RelStatBuildNumber( [in] handle_t Binding, [in, out] unsigned long *pBuildNumber ); error_status_t RelStatTickCount( [in] handle_t Binding, [in, out] unsigned long* pTickCount ); }