Blame | Last modification | View Log | Download
/*++ BUILD Version: 0001 // Increment this if a change has global effectsCopyright (c) 1994-1996 Microsoft CorporationModule Name:psapi.hAbstract:Include file for APIs provided by PSAPI.DLLAuthor:Richard Shupak [richards] 06-Jan-1994Revision History:--*/#ifndef _PSAPI_H_#define _PSAPI_H_#ifdef __cplusplusextern "C" {#endifBOOLWINAPIEnumProcesses(DWORD * lpidProcess,DWORD cb,DWORD * cbNeeded);BOOLWINAPIEnumProcessModules(HANDLE hProcess,HMODULE *lphModule,DWORD cb,LPDWORD lpcbNeeded);DWORDWINAPIGetModuleBaseNameA(HANDLE hProcess,HMODULE hModule,LPSTR lpBaseName,DWORD nSize);DWORDWINAPIGetModuleBaseNameW(HANDLE hProcess,HMODULE hModule,LPWSTR lpBaseName,DWORD nSize);#ifdef UNICODE#define GetModuleBaseName GetModuleBaseNameW#else#define GetModuleBaseName GetModuleBaseNameA#endif // !UNICODEDWORDWINAPIGetModuleFileNameExA(HANDLE hProcess,HMODULE hModule,LPSTR lpFilename,DWORD nSize);DWORDWINAPIGetModuleFileNameExW(HANDLE hProcess,HMODULE hModule,LPWSTR lpFilename,DWORD nSize);#ifdef UNICODE#define GetModuleFileNameEx GetModuleFileNameExW#else#define GetModuleFileNameEx GetModuleFileNameExA#endif // !UNICODEtypedef struct _MODULEINFO {LPVOID lpBaseOfDll;DWORD SizeOfImage;LPVOID EntryPoint;} MODULEINFO, *LPMODULEINFO;BOOLWINAPIGetModuleInformation(HANDLE hProcess,HMODULE hModule,LPMODULEINFO lpmodinfo,DWORD cb);BOOLWINAPIEmptyWorkingSet(HANDLE hProcess);BOOLWINAPIQueryWorkingSet(HANDLE hProcess,PVOID pv,DWORD cb);BOOLWINAPIInitializeProcessForWsWatch(HANDLE hProcess);typedef struct _PSAPI_WS_WATCH_INFORMATION {LPVOID FaultingPc;LPVOID FaultingVa;} PSAPI_WS_WATCH_INFORMATION, *PPSAPI_WS_WATCH_INFORMATION;BOOLWINAPIGetWsChanges(HANDLE hProcess,PPSAPI_WS_WATCH_INFORMATION lpWatchInfo,DWORD cb);DWORDWINAPIGetMappedFileNameW(HANDLE hProcess,LPVOID lpv,LPWSTR lpFilename,DWORD nSize);DWORDWINAPIGetMappedFileNameA(HANDLE hProcess,LPVOID lpv,LPSTR lpFilename,DWORD nSize);#ifdef UNICODE#define GetMappedFilenameEx GetMappedFilenameExW#else#define GetMappedFilenameEx GetMappedFilenameExA#endif // !UNICODEBOOLWINAPIEnumDeviceDrivers(LPVOID *lpImageBase,DWORD cb,LPDWORD lpcbNeeded);DWORDWINAPIGetDeviceDriverBaseNameA(LPVOID ImageBase,LPSTR lpBaseName,DWORD nSize);DWORDWINAPIGetDeviceDriverBaseNameW(LPVOID ImageBase,LPWSTR lpBaseName,DWORD nSize);#ifdef UNICODE#define GetDeviceDriverBaseName GetDeviceDriverBaseNameW#else#define GetDeviceDriverBaseName GetDeviceDriverBaseNameA#endif // !UNICODEDWORDWINAPIGetDeviceDriverFileNameA(LPVOID ImageBase,LPSTR lpFilename,DWORD nSize);DWORDWINAPIGetDeviceDriverFileNameW(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;BOOLWINAPIGetProcessMemoryInfo(HANDLE Process,PPROCESS_MEMORY_COUNTERS ppsmemCounters,DWORD cb);#ifdef __cplusplus}#endif#endif