#include Psapi.h#include vectorBOOL TraversalProcess2(OUT std::vectorDWORD vec){vec.clear();try{BYTE *pbt = 0;DWORD dwSize = 0, dw = 0x1000;BOOL b = 0;for (; dw INT_MAX !b; dw *= 2){if ...
#include <Psapi.h>
#include <vector>
BOOL TraversalProcess2(OUT std::vector<DWORD> &vec)
{
vec.clear();
try
{
BYTE *pbt = 0;
DWORD dwSize = 0, dw = 0x1000;
BOOL b = 0;
for (; dw < INT_MAX && !b; dw *= 2)
{
if (pbt)
{
delete pbt;
pbt = 0;
}
pbt = new BYTE[dw];
if (pbt)
{
b = EnumProcesses((DWORD*)pbt, dw, &dwSize);
}
}
if (pbt && b)
{
DWORD *pdw = (DWORD*)pbt;
for (DWORD i = 0; i < dwSize / sizeof(DWORD); ++i)
{
vec.push_back(pdw[i]);
}
delete pbt;
pbt = 0;
}
}
catch (...)
{
OutputDebugStringA(__FUNCTION__);
return 0;
}
return vec.size() > 0;
}
int main()
{
std::vector<DWORD> vec;
std::cout << TraversalProcess2(vec) << endl;
for each (DWORD var in vec)
{
printf("%d\t", var);
printf("\r\n");
}
return 0;
}
沃梦达教程
本文标题为:C++.进程2
猜你喜欢
- C语言详解float类型在内存中的存储方式 2023-03-27
- 我应该为我的项目使用相对包含路径,还是将包含目录放在包含路径上? 2022-10-30
- ubuntu下C/C++获取剩余内存 2023-09-18
- C++ 数据结构超详细讲解顺序表 2023-03-25
- C语言qsort()函数的使用方法详解 2023-04-26
- c++ const 成员函数,返回一个 const 指针.但是返回的指针是什么类型的 const? 2022-10-11
- C语言手把手带你掌握带头双向循环链表 2023-04-03
- Qt计时器使用方法详解 2023-05-30
- 详解C语言中sizeof如何在自定义函数中正常工作 2023-04-09
- Easyx实现扫雷游戏 2023-02-06