📄 jwapdh.pas
字号:
function PdhGetCounterInfoW(hCounter: PDH_HCOUNTER; bRetrieveExplainText: Boolean;
var pdwBufferSize: DWORD; lpBuffer: PPDH_COUNTER_INFO_W): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetCounterInfoW}
{$IFDEF UNICODE}
function PdhGetCounterInfo(hCounter: PDH_HCOUNTER; bRetrieveExplainText: Boolean;
var pdwBufferSize: DWORD; lpBuffer: PPDH_COUNTER_INFO_W): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetCounterInfo}
{$ELSE}
function PdhGetCounterInfo(hCounter: PDH_HCOUNTER; bRetrieveExplainText: Boolean;
var pdwBufferSize: DWORD; lpBuffer: PPDH_COUNTER_INFO_A): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetCounterInfo}
{$ENDIF}
const
PDH_MAX_SCALE = Longint(7);
{$EXTERNALSYM PDH_MAX_SCALE}
PDH_MIN_SCALE = Longint(-7);
{$EXTERNALSYM PDH_MIN_SCALE}
function PdhSetCounterScaleFactor(hCounter: PDH_HCOUNTER; lFactor: LONG): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhSetCounterScaleFactor}
//
// Browsing and enumeration functions
//
function PdhConnectMachineA(szMachineName: LPCSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhConnectMachineA}
function PdhConnectMachineW(szMachineName: LPCWSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhConnectMachineW}
{$IFDEF UNICODE}
function PdhConnectMachine(szMachineName: LPCWSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhConnectMachine}
{$ELSE}
function PdhConnectMachine(szMachineName: LPCSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhConnectMachine}
{$ENDIF}
function PdhEnumMachinesA(szDataSource: LPCSTR; mszMachineList: LPSTR;
pcchBufferSize: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumMachinesA}
function PdhEnumMachinesW(szDataSource: LPCWSTR; mszMachineList: LPWSTR;
pcchBufferSize: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumMachinesW}
{$IFDEF UNICODE}
function PdhEnumMachines(szDataSource: LPCWSTR; mszMachineList: LPWSTR;
pcchBufferSize: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumMachines}
{$ELSE}
function PdhEnumMachines(szDataSource: LPCSTR; mszMachineList: LPSTR;
pcchBufferSize: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumMachines}
{$ENDIF}
function PdhEnumObjectsA(szDataSource, szMachineName: LPCSTR; mszObjectList: LPSTR;
var pcchBufferSize: DWORD; dwDetailLevel: DWORD; bRefresh: BOOL): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjectsA}
function PdhEnumObjectsW(szDataSource, szMachineName: LPCWSTR; mszObjectList: LPWSTR;
var pcchBufferSize: DWORD; dwDetailLevel: DWORD; bRefresh: BOOL): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjectsW}
{$IFDEF UNICODE}
function PdhEnumObjects(szDataSource, szMachineName: LPCWSTR; mszObjectList: LPWSTR;
var pcchBufferSize: DWORD; dwDetailLevel: DWORD; bRefresh: BOOL): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjects}
{$ELSE}
function PdhEnumObjects(szDataSource, szMachineName: LPCSTR; mszObjectList: LPSTR;
var pcchBufferSize: DWORD; dwDetailLevel: DWORD; bRefresh: BOOL): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjects}
{$ENDIF}
function PdhEnumObjectItemsA(szDataSource, szMachineName, szObjectName: LPCSTR;
mszCounterList: LPSTR; var pcchCounterListLength: DWORD; mszInstanceList: LPSTR;
var pcchInstanceListLength: DWORD; dwDetailLevel, dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjectItemsA}
function PdhEnumObjectItemsW(szDataSource, szMachineName, szObjectName: LPCWSTR;
mszCounterList: LPWSTR; var pcchCounterListLength: DWORD; mszInstanceList: LPWSTR;
var pcchInstanceListLength: DWORD; dwDetailLevel, dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjectItemsW}
{$IFDEF UNICODE}
function PdhEnumObjectItems(szDataSource, szMachineName, szObjectName: LPCWSTR;
mszCounterList: LPWSTR; var pcchCounterListLength: DWORD; mszInstanceList: LPWSTR;
var pcchInstanceListLength: DWORD; dwDetailLevel, dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjectItems}
{$ELSE}
function PdhEnumObjectItems(szDataSource, szMachineName, szObjectName: LPCSTR;
mszCounterList: LPSTR; var pcchCounterListLength: DWORD; mszInstanceList: LPSTR;
var pcchInstanceListLength: DWORD; dwDetailLevel, dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhEnumObjectItems}
{$ENDIF}
const
PDH_OBJECT_HAS_INSTANCES = $00000001;
{$EXTERNALSYM PDH_OBJECT_HAS_INSTANCES}
function PdhMakeCounterPathA(pCounterPathElements: PPDH_COUNTER_PATH_ELEMENTS_A;
szFullPathBuffer: LPSTR; var pcchBufferSize: DWORD; dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhMakeCounterPathA}
function PdhMakeCounterPathW(pCounterPathElements: PPDH_COUNTER_PATH_ELEMENTS_W;
szFullPathBuffer: LPWSTR; var pcchBufferSize: DWORD; dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhMakeCounterPathW}
{$IFDEF UNICODE}
function PdhMakeCounterPath(pCounterPathElements: PPDH_COUNTER_PATH_ELEMENTS_W;
szFullPathBuffer: LPWSTR; var pcchBufferSize: DWORD; dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhMakeCounterPath}
{$ELSE}
function PdhMakeCounterPath(pCounterPathElements: PPDH_COUNTER_PATH_ELEMENTS_A;
szFullPathBuffer: LPSTR; var pcchBufferSize: DWORD; dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhMakeCounterPath}
{$ENDIF}
// todo shouldn't pCounterPathElements be a pointer to ...?
function PdhParseCounterPathA(szFullPathBuffer: LPCSTR;
pCounterPathElements: PDH_COUNTER_PATH_ELEMENTS_A; var pdwBufferSize: DWORD;
dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseCounterPathA}
function PdhParseCounterPathW(szFullPathBuffer: LPCWSTR;
pCounterPathElements: PDH_COUNTER_PATH_ELEMENTS_W; var pdwBufferSize: DWORD;
dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseCounterPathW}
{$IFDEF UNICODE}
function PdhParseCounterPath(szFullPathBuffer: LPCWSTR;
pCounterPathElements: PDH_COUNTER_PATH_ELEMENTS_W; var pdwBufferSize: DWORD;
dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseCounterPath}
{$ELSE}
function PdhParseCounterPath(szFullPathBuffer: LPCSTR;
pCounterPathElements: PDH_COUNTER_PATH_ELEMENTS_A; var pdwBufferSize: DWORD;
dwFlags: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseCounterPath}
{$ENDIF}
const
PDH_PATH_WBEM_RESULT = DWORD($00000001);
{$EXTERNALSYM PDH_PATH_WBEM_RESULT}
PDH_PATH_WBEM_INPUT = DWORD($00000002);
{$EXTERNALSYM PDH_PATH_WBEM_INPUT}
function PDH_PATH_LANG_FLAGS(LangId, Flags: DWORD): DWORD;
{$EXTERNALSYM PDH_PATH_LANG_FLAGS}
function PdhParseInstanceNameA(szInstanceString: LPSTR; szInstanceName: LPCSTR;
var pcchInstanceNameLength: DWORD; szParentName: LPSTR;
var pcchParentNameLength: DWORD; lpIndex: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseInstanceNameA}
function PdhParseInstanceNameW(szInstanceString: LPWSTR; szInstanceName: LPCWSTR;
var pcchInstanceNameLength: DWORD; szParentName: LPWSTR;
var pcchParentNameLength: DWORD; lpIndex: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseInstanceNameW}
{$IFDEF UNICODE}
function PdhParseInstanceName(szInstanceString: LPWSTR; szInstanceName: LPCWSTR;
var pcchInstanceNameLength: DWORD; szParentName: LPWSTR;
var pcchParentNameLength: DWORD; lpIndex: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseInstanceName}
{$ELSE}
function PdhParseInstanceName(szInstanceString: LPSTR; szInstanceName: LPCSTR;
var pcchInstanceNameLength: DWORD; szParentName: LPSTR;
var pcchParentNameLength: DWORD; lpIndex: LPDWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhParseInstanceName}
{$ENDIF}
function PdhValidatePathA(szFullPathBuffer: LPCSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhValidatePathA}
function PdhValidatePathW(szFullPathBuffer: LPCWSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhValidatePathW}
{$IFDEF UNICODE}
function PdhValidatePath(szFullPathBuffer: LPCWSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhValidatePath}
{$ELSE}
function PdhValidatePath(szFullPathBuffer: LPCSTR): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhValidatePath}
{$ENDIF}
function PdhGetDefaultPerfObjectA(szDataSource, szMachineName: LPCSTR;
szDefaultObjectName: LPSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfObjectA}
function PdhGetDefaultPerfObjectW(szDataSource, szMachineName: LPCWSTR;
szDefaultObjectName: LPWSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfObjectW}
{$IFDEF UNICODE}
function PdhGetDefaultPerfObject(szDataSource, szMachineName: LPCWSTR;
szDefaultObjectName: LPWSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfObject}
{$ELSE}
function PdhGetDefaultPerfObject(szDataSource, szMachineName: LPCSTR;
szDefaultObjectName: LPSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfObject}
{$ENDIF}
function PdhGetDefaultPerfCounterA(szDataSource, szMachineName, szObjectName: LPCSTR;
szDefaultCounterName: LPSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfCounterA}
function PdhGetDefaultPerfCounterW(szDataSource, szMachineName, szObjectName: LPCWSTR;
szDefaultCounterName: LPWSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfCounterW}
{$IFDEF UNICODE}
function PdhGetDefaultPerfCounter(szDataSource, szMachineName, szObjectName: LPCWSTR;
szDefaultCounterName: LPWSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfCounter}
{$ELSE}
function PdhGetDefaultPerfCounter(szDataSource, szMachineName, szObjectName: LPCSTR;
szDefaultCounterName: LPSTR; var pcchBufferSize: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhGetDefaultPerfCounter}
{$ENDIF}
type
CounterPathCallBack = function (dwArg: DWORD_PTR): PDH_STATUS; stdcall;
{$EXTERNALSYM CounterPathCallBack}
const
PDH_CF_INCLUDEINSTANCEINDEX = 1 shl 0;
PDH_CF_SINGLECOUNTERPERADD = 1 shl 1;
PDH_CF_SINGLECOUNTERPERDIALOG = 1 shl 2;
PDH_CF_LOCALCOUNTERSONLY = 1 shl 3;
PDH_CF_WILDCARDINSTANCES = 1 shl 4;
PDH_CF_HIDEDETAILBOX = 1 shl 5;
PDH_CF_INITIALIZEPATH = 1 shl 6;
PDH_CF_DISABLEMACHINESELECTION = 1 shl 7;
PDH_CF_INCLUDECOSTLYOBJECTS = 1 shl 8;
PDH_CF_SHOWOBJECTBROWSER = 1 shl 9;
PDH_CF_RESERVED = DWORD($FFFFFD00);
type
_BrowseDlgConfig_HW = record
// Configuration flags
dwConfigFlags: DWORD;
hWndOwner: HWND;
hDataSource: PDH_HLOG;
szReturnPathBuffer: LPWSTR;
cchReturnPathLength: DWORD;
pCallBack: CounterPathCallBack;
dwCallBackArg: DWORD_PTR;
CallBackStatus: PDH_STATUS;
dwDefaultDetailLevel: DWORD;
szDialogBoxCaption: LPWSTR;
end;
{$EXTERNALSYM _BrowseDlgConfig_HW}
PDH_BROWSE_DLG_CONFIG_HW = _BrowseDlgConfig_HW;
{$EXTERNALSYM PDH_BROWSE_DLG_CONFIG_HW}
PPDH_BROWSE_DLG_CONFIG_HW = ^PDH_BROWSE_DLG_CONFIG_HW;
{$EXTERNALSYM PPDH_BROWSE_DLG_CONFIG_HW}
TPdhBrowseDlgConfigHW = PDH_BROWSE_DLG_CONFIG_HW;
PPdhBrowseDlgConfigHW = PPDH_BROWSE_DLG_CONFIG_HW;
_BrowseDlgConfig_HA = record
// Configuration flags
dwConfigFlags: DWORD;
hWndOwner: HWND;
hDataSource: PDH_HLOG;
szReturnPathBuffer: LPSTR;
cchReturnPathLength: DWORD;
pCallBack: CounterPathCallBack;
dwCallBackArg: DWORD_PTR;
CallBackStatus: PDH_STATUS;
dwDefaultDetailLevel: DWORD;
szDialogBoxCaption: LPSTR;
end;
{$EXTERNALSYM _BrowseDlgConfig_HA}
PDH_BROWSE_DLG_CONFIG_HA = _BrowseDlgConfig_HA;
{$EXTERNALSYM PDH_BROWSE_DLG_CONFIG_HA}
PPDH_BROWSE_DLG_CONFIG_HA = ^PDH_BROWSE_DLG_CONFIG_HA;
{$EXTERNALSYM PPDH_BROWSE_DLG_CONFIG_HA}
TPdhBrowseDlGconfigHA = PDH_BROWSE_DLG_CONFIG_HA;
PPdhBrowseDlGconfigHA = PPDH_BROWSE_DLG_CONFIG_HA;
PPDH_BROWSE_DLG_CONFIG_A = ^_BrowseDlgConfig_A;
{$EXTERNALSYM PPDH_BROWSE_DLG_CONFIG_A}
_BrowseDlgConfig_A = record
dwConfigFlags: DWORD;
hWndOwner: HWND;
szDataSource: LPSTR;
szReturnPathBuffer: LPSTR;
cchReturnPathLength: DWORD;
pCallBack: CounterPathCallBack;
dwCallBackArg: DWORD_PTR;
CallBackStatus: PDH_STATUS;
dwDefaultDetailLevel: DWORD;
szDialogBoxCaption: LPSTR;
end;
{$EXTERNALSYM _BrowseDlgConfig_A}
PDH_BROWSE_DLG_CONFIG_A = _BrowseDlgConfig_A;
{$EXTERNALSYM PDH_BROWSE_DLG_CONFIG_A}
TPdhBrowseDlgConfigA = PDH_BROWSE_DLG_CONFIG_A;
PPdhBrowseDlgConfigA = PPDH_BROWSE_DLG_CONFIG_A;
PPDH_BROWSE_DLG_CONFIG_W = ^_BrowseDlgConfig_W;
{$EXTERNALSYM PPDH_BROWSE_DLG_CONFIG_W}
_BrowseDlgConfig_W = record
dwConfigFlags: DWORD;
hWndOwner: HWND;
szDataSource: LPWSTR;
szReturnPathBuffer: LPWSTR;
cchReturnPathLength: DWORD;
pCallBack: CounterPathCallBack;
dwCallBackArg: DWORD_PTR;
CallBackStatus: PDH_STATUS;
dwDefaultDetailLevel: DWORD;
szDialogBoxCaption: LPWSTR;
end;
{$EXTERNALSYM _BrowseDlgConfig_W}
PDH_BROWSE_DLG_CONFIG_W = _BrowseDlgConfig_W;
{$EXTERNALSYM PDH_BROWSE_DLG_CONFIG_W}
TPdhBrowseDlgConfigW = PDH_BROWSE_DLG_CONFIG_W;
PPdhBrowseDlgConfigW = PPDH_BROWSE_DLG_CONFIG_W;
{$IFDEF UNICODE}
PPdhBrowseDlgConfig = PPdhBrowseDlgConfigW;
PDH_BROWSE_DLG_CONFIG = PDH_BROWSE_DLG_CONFIG_W;
{$EXTERNALSYM PDH_BROWSE_DLG_CONFIG}
PPDH_BROWSE_DLG_CONFIG = PPDH_BROWSE_DLG_CONFIG_W;
{$EXTERNALSYM PPDH_BROWSE_DLG_CONFIG}
TPdhBrowseDlgConfig = TPdhBrowseDlgConfigW;
{$ELSE}
PPdhBrowseDlgConfig = PPdhBrowseDlgConfigA;
PDH_BROWSE_DLG_CONFIG = PDH_BROWSE_DLG_CONFIG_A;
{$EXTERNALSYM PDH_BROWSE_DLG_CONFIG}
PPDH_BROWSE_DLG_CONFIG = PPDH_BROWSE_DLG_CONFIG_A;
{$EXTERNALSYM PPDH_BROWSE_DLG_CONFIG}
TPdhBrowseDlgConfig = TPdhBrowseDlgConfigA;
{$ENDIF}
function PdhBrowseCountersA(const pBrowseDlgData: PDH_BROWSE_DLG_CONFIG_A): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhBrowseCountersA}
function PdhBrowseCountersW(const pBrowseDlgData: PDH_BROWSE_DLG_CONFIG_W): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhBrowseCountersW}
{$IFDEF UNICODE}
function PdhBrowseCounters(const pBrowseDlgData: PDH_BROWSE_DLG_CONFIG_W): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhBrowseCounters}
{$ELSE}
function PdhBrowseCounters(const pBrowseDlgData: PDH_BROWSE_DLG_CONFIG_A): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhBrowseCounters}
{$ENDIF}
function PdhExpandCounterPathA(szWildCardPath: LPCSTR; mszExpandedPathList: LPSTR;
var pcchPathListLength: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhExpandCounterPathA}
function PdhExpandCounterPathW(szWildCardPath: LPCWSTR; mszExpandedPathList: LPWSTR;
var pcchPathListLength: DWORD): PDH_STATUS; stdcall;
{$EXTERNALSYM PdhExpandCounterPathW}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -