我爱Aspx >> VC.Net >> 列举进程列举进程
程:一个实践的方法
作者:Irfan Dawood
来源:
译者:zhf0021
简介
首先,欢迎来到“列举进程:一个实践的方法”这个旅程。在这里,我将试着定义什么是进程,然后我们将用C++和ToolHelp32 API 找出我们机器上正在运行的所有进程。
什么是进程
进程是正在运行的程序的一个实例。系统中,可能一个程序有多个运行的实例,他们各自独立的运行着。一个进程能够产生子进程,产生子进程的进程也叫父进程。这和面向对象中的继承不相同,面向对象中,我们可以在不产生父类的实例的情况下产生子类的实例。而要产生子进程必须首先产生父进程,同时,子进程可以使用父进程的资源。
解释
我使用的是Visual C++ 6.0 专业版,工程类型是Win32 Console Application(为了简单),我们将使用ToolHelp32 API。我使用的是Win2000,希望在9x上也能运行。对NT而言,我们使用PSAPI (Process Status API)函数,在这里我们将不讨论他们。
首先要包含必要的头文件:
#include <windows.h>
#include <tlhelp32.h>
#include <iostream>
#include <string>
using namespace std;
int main( )
{
cout<<endl<<"Running Processes"<<endl;
现在我们将利用函数CreateToolhelp32Snapshot()获得当前运行进程的快照,这个函数返回包含正在运行
进程的快照句柄。他的原形是:
【我对这篇文章有话说?】
如何在工具栏上添加平面下拉控件[05-21]
接触VC,2:1[05-21]
自己动手做QQ木马----邮件发送篇[05-21]
接触VC(二)[05-21]
WTL流程分析-初稿[05-21]
通过串口收发短消息(下)[05-21]
自己动手做QQ木马-----HOOK篇[05-21]
自己动手做QQ木马-----总序[05-21]
进程间的通讯实现(IPC)的11种方..[05-21]
C++深度探索系列:智能指针(Smar..[05-21]