
#include <tlhelp32.h>
void EnumProcess(void)
{
HANDLE hProcessSnap
HANDLE hProcess
PROCESSENTRY32 pe32
DWORD dwPriorityClass
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)
if (hProcessSnap == INVALID_HANDLE_VALUE)
{
return
}
pe32.dwSize = sizeof(PROCESSENTRY32)
if (!Process32First(hProcessSnap, &pe32))
{
CloseHandle(hProcessSnap)
return
}
do
{
//printf("%s", pe32.szExeFile)//完整文件名
//printf("%d", (int)pe32.cntThreads)//线程数
}while(Process32Next(hProcessSnap, &pe32))
CloseHandle(hProcessSnap)
}
如果要获取进程句柄
HANDLE hProcessHandle
hProcessHandle = OpenProcess(0x1F0FFF, true, ProcessID)//ProcessID进程ID
这个在控制台,Win32 SDK ,MFC 都败闷可以用的,只不过
SDK ,MFC 输出就 不用 printf 了,只猛郑要把获取的内容赋给变量就行了
句柄,是整个Windows编程的基础。一个句柄是指使用的一个唯一的整数值,即一个4字节(64位敏庆唯程序中为8字节)长的数值,来标识应用程序中的不同对象和同类中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等。通俗的来讲,句柄是一桥培个ID。我们可以利用这个ID *** 作这个ID所绑定的空间,对象等。
比较常见的句柄,比如:HINSTANCE(实例句柄),HBITMAP(位图句柄),HDC(设备描述表句柄),HICON(图标差埋句柄)等等。
我们利用这些句柄 *** 作对象,图片,设备等等。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)