Windows进程状态API之Ps API

windows的进程状态信息函数主要分为两类,一类是PSPROCESS STATUS HELPERAPI,另外一类是ThTOOL HELPAPI

本文介绍PS API。

Ps API 函数列表及其功能说明:

使用Ps API需要包含psapi.h文件以及psapi.lib

EmptyWorkingSet 从执行的工作集中尽可能的多删除页(page),内存优化工具就使用了这个软件。

BOOL WINAPI EmptyWorkingSet(_In_ HANDLE hProcess);

 

EnumDeviceDrivers 枚举设备驱动

BOOL WINAPI EnumDeviceDrivers(_Out_ LPVOID *lpImageBase, _In_ WORD cb, _Out_ LPDWORD lpcbNeeded);

 

EnumPageFiles 枚举页文件

BOOL WINAPI EnumPageFiles(_Out_ PENUM_PAGE_CALLBACK pCallbackRoutine, _In_ LPVOID lpContext);

 

EnumProcesses 枚举进程

BOOL WINAPI EnumProcesses(_Out_ DWORD *pProcessIds, _In_ DWORD cb, _Out_ DWORD *pBytesReturned);

 

EnumProcessModules 枚举进程模块

BOOL WINAPI EnumProcessModules(_In_ HANDLE hProcess, _Out_ HMODULE *lphModule, _In_ DWORD cb, _Out_ LPDWORD lpcbNeeded);

 

EnumProcessModulesEx 枚举进程模块

  BOOL WINAPI EnumProcessModulesEx(_In_ HANDLE hProcess, _Out_ HMODULE *lphModule, _In_ DWORD cb, _Out_ LPDWORD lpcbNeeded,_In_ DWORD dwFilterFlag);

 

GetDeviceDriverBaseName 获取驱动的base name(目前还不清楚base name是什么东西)

DWORD WINAPI GetDeviceDriverBaseName(_In_ LPVOID ImageBase, _Out_ LPTSTR lpBaseName, _In_ DWORD nSize);

 

GetDeviceDriverFileName 这个是用来获取驱动的文件名

DWORD WINAPI GetDeviceDriverFileName(_In_ LPVOID ImageBase, _Out_ LPTSTR lpFilename, _In_ DWORD nSize);

 

GetMappedFileName 这个很函数检测参数地址是不是在指定进程的地址空间的内存映射文件中,如果是,则返回内存映射文件名

DWORD WINAPI GetMappedFileName(_In_ HANDLE hProcess, _In_ LPVOID lpv, _Out_ LPTSTR lpFilename, _In_ DWORD nSize);

 

GetModuleBaseName 获取模块的基址名称

DWORD WINAPI GetModuleBaseName(_In_ HANDLE hProcess, _In_opt_ HMODULE hModule, _Out_ LPTSTR lpBaseName, _In_ DWORD nSize);

 

GetModuleFileNameEx 获取模块文件名

DWORD WINAPI GetModuleFileNameEx(_In_ HANDLE hProcess, _In_opt_ HMODULE hModule, _Out_ LPTSTR lpFilename, _In_ DWORD nSize);

 

GetModuleInformation 获取模块文件信息原型:

BOOL WINAPI GetModuleInformation(_In_ HANDLE hProcess, _In_ HMODULE hModule, _Out_ LPMODULEINFO lpmodinfo, _In_ DWORD cb);

 

GetPerformanceInfo 返回一个包含性能信息的PERFORMANCE_INFORMATION 结构体

BOOL WINAPI GetPerformanceInfo(_Out_  PPERFORMANCE_INFORMATION pPerformanceInformation, _In_ DWORD cb);

 

GetProcessimagefilename 获取指定进程的可执行文件名

DWORD WINAPI GetProcessImageFileName(_In_ HANDLE hProcess, _Out_ LPTSTR lpImageFileName, _In_ DWORD nSize);

 

GetProcessMemoryInfo 通过PROCESS_MEMORY_COUNTERS结构返回指定进程的内存使用信息

BOOL WINAPI GetProcessMemoryInfo(_In_ HANDLE Process, _Out_ PPROCESS_MEMORY_COUNTERS ppsmemCounters, _In_ DWORD cb);

 

GetWsChanges 返回自 InitializeProcessForWsWatch 函数被调用后添加到工作集(WS:working set)的页(pages)信息

BOOL WINAPI GetWsChanges(_In_ HANDLE hProcess, _Out_ PPSAPI_WS_WATCH_INFORMATION lpWatchInfo, _In_ DWORD cb);

 

GetWsChangesEx 返回自 InitializeProcessForWsWatch 函数被调用后添加到工作集(WS:working set)的页(pages)信息

BOOL WINAPI GetWsChanges(_In_ HANDLE hProcess, _Out_ PPSAPI_WS_WATCH_INFORMATION_EX lpWatchInfoEx, _In_ DWORD cb);

 

InitializeProcessForWsWatch 启动对指定进程的ws监控

BOOL WINAPI InitializeProcessForWsWatch(_In_  HANDLE hProcess);

 

QueryWorkingSet获取指定进程位于虚拟地址空间的页(pages)扩展信息

BOOL WINAPI QueryWorkingSet(_In_ HANDLE hProcess, _Out_ PVOID pv, _In_ DWORD cb);

 

QueryWorkingSetEx获取指定进程位于虚拟地址空间的页(pages)扩展信息

BOOL WINAPI QueryWorkingSet(_In_ HANDLE hProcess, _Inout_ PVOID pv, _In_ DWORD cb);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值