PSAPI.H
上传用户:jnhwc1
上传日期:2022-07-09
资源大小:100k
文件大小:4k
- /*++ BUILD Version: 0001 // Increment this if a change has global effects
- Copyright (c) 1994 Microsoft Corporation
- Module Name:
- psapi.h
- Abstract:
- Include file for APIs provided by PSAPI.DLL
- Author:
- Richard Shupak [richards] 06-Jan-1994
- Revision History:
- --*/
- #ifndef _PSAPI_H_
- #define _PSAPI_H_
- #ifdef __cplusplus
- extern "C" {
- #endif
- BOOL
- WINAPI
- EnumProcesses(
- DWORD * lpidProcess,
- DWORD cb,
- DWORD * cbNeeded
- );
- BOOL
- WINAPI
- EnumProcessModules(
- HANDLE hProcess,
- HMODULE *lphModule,
- DWORD cb,
- LPDWORD lpcbNeeded
- );
- DWORD
- WINAPI
- GetModuleBaseNameA(
- HANDLE hProcess,
- HMODULE hModule,
- LPSTR lpBaseName,
- DWORD nSize
- );
- DWORD
- WINAPI
- GetModuleBaseNameW(
- HANDLE hProcess,
- HMODULE hModule,
- LPWSTR lpBaseName,
- DWORD nSize
- );
- #ifdef UNICODE
- #define GetModuleBaseName GetModuleBaseNameW
- #else
- #define GetModuleBaseName GetModuleBaseNameA
- #endif // !UNICODE
- DWORD
- WINAPI
- GetModuleFileNameExA(
- HANDLE hProcess,
- HMODULE hModule,
- LPSTR lpFilename,
- DWORD nSize
- );
- DWORD
- WINAPI
- GetModuleFileNameExW(
- HANDLE hProcess,
- HMODULE hModule,
- LPWSTR lpFilename,
- DWORD nSize
- );
- #ifdef UNICODE
- #define GetModuleFileNameEx GetModuleFileNameExW
- #else
- #define GetModuleFileNameEx GetModuleFileNameExA
- #endif // !UNICODE
- typedef struct _MODULEINFO {
- LPVOID lpBaseOfDll;
- DWORD SizeOfImage;
- LPVOID EntryPoint;
- } MODULEINFO, *LPMODULEINFO;
- BOOL
- WINAPI
- GetModuleInformation(
- HANDLE hProcess,
- HMODULE hModule,
- LPMODULEINFO lpmodinfo,
- DWORD cb
- );
- BOOL
- WINAPI
- EmptyWorkingSet(
- HANDLE hProcess
- );
- BOOL
- WINAPI
- QueryWorkingSet(
- HANDLE hProcess,
- PVOID pv,
- DWORD cb
- );
- BOOL
- WINAPI
- InitializeProcessForWsWatch(
- HANDLE hProcess
- );
- typedef struct _PSAPI_WS_WATCH_INFORMATION {
- LPVOID FaultingPc;
- LPVOID FaultingVa;
- } PSAPI_WS_WATCH_INFORMATION, *PPSAPI_WS_WATCH_INFORMATION;
- BOOL
- WINAPI
- GetWsChanges(
- HANDLE hProcess,
- PPSAPI_WS_WATCH_INFORMATION lpWatchInfo,
- DWORD cb
- );
- DWORD
- WINAPI
- GetMappedFileNameW(
- HANDLE hProcess,
- LPVOID lpv,
- LPWSTR lpFilename,
- DWORD nSize
- );
- DWORD
- WINAPI
- GetMappedFileNameA(
- HANDLE hProcess,
- LPVOID lpv,
- LPSTR lpFilename,
- DWORD nSize
- );
- #ifdef UNICODE
- #define GetMappedFilenameEx GetMappedFilenameExW
- #else
- #define GetMappedFilenameEx GetMappedFilenameExA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumDeviceDrivers(
- LPVOID *lpImageBase,
- DWORD cb,
- LPDWORD lpcbNeeded
- );
- DWORD
- WINAPI
- GetDeviceDriverBaseNameA(
- LPVOID ImageBase,
- LPSTR lpBaseName,
- DWORD nSize
- );
- DWORD
- WINAPI
- GetDeviceDriverBaseNameW(
- LPVOID ImageBase,
- LPWSTR lpBaseName,
- DWORD nSize
- );
- #ifdef UNICODE
- #define GetDeviceDriverBaseName GetDeviceDriverBaseNameW
- #else
- #define GetDeviceDriverBaseName GetDeviceDriverBaseNameA
- #endif // !UNICODE
- DWORD
- WINAPI
- GetDeviceDriverFileNameA(
- LPVOID ImageBase,
- LPSTR lpFilename,
- DWORD nSize
- );
- DWORD
- WINAPI
- GetDeviceDriverFileNameW(
- LPVOID ImageBase,
- LPWSTR lpFilename,
- DWORD nSize
- );
- #ifdef UNICODE
- #define GetDeviceDriverFileName GetDeviceDriverFileNameW
- #else
- #define GetDeviceDriverFileName GetDeviceDriverFileNameA
- #endif // !UNICODE
- // Structure for GetProcessMemoryInfo()
- typedef struct _PROCESS_MEMORY_COUNTERS {
- DWORD cb;
- DWORD PageFaultCount;
- DWORD PeakWorkingSetSize;
- DWORD WorkingSetSize;
- DWORD QuotaPeakPagedPoolUsage;
- DWORD QuotaPagedPoolUsage;
- DWORD QuotaPeakNonPagedPoolUsage;
- DWORD QuotaNonPagedPoolUsage;
- DWORD PagefileUsage;
- DWORD PeakPagefileUsage;
- } PROCESS_MEMORY_COUNTERS;
- typedef PROCESS_MEMORY_COUNTERS *PPROCESS_MEMORY_COUNTERS;
- BOOL
- WINAPI
- GetProcessMemoryInfo(
- HANDLE Process,
- PPROCESS_MEMORY_COUNTERS ppsmemCounters,
- DWORD cb
- );
- #ifdef __cplusplus
- }
- #endif
- #endif