进程句柄和进程ID的区别和关系
2013-09-21 00:19
549 查看
进程句柄和进程ID的区别和关系
进程是一个正在运行的程序 进程里可以包括多个模块(DLL,OCX,等) 进程句柄是程序访问时用到的东西,当前进程句柄等于主模块的句柄,当你使用OpenProcess时的进程句柄是不等于那个句柄的,使用完了还要关闭那个句柄 进程ID是在系统中的标识,一个进程可以有多个句柄但是ID就只有一个,可以通过ID打开多个句柄 进程是内核对象,其ID是一个32位的无符号整数,用于在整个系统中唯一地标志该对象(就象你的身份证号在全国范围内唯一地标志了你一样);你在任何进程中都可使用该ID号访问进程对象; 而进程的句柄则是基于特定进程的,对于同一个进程对象,在不同的进程中可能有不同的句柄值。因为句柄实际上是进程空间中的句柄表的偏移,由于在不同的进程空间中句柄表是不同的,针对相同的对象在句柄表的偏移也就不一样了! 句柄实际是一个指针,他指向一块包含具体信息数据的内存,可以当做索引 ,所以进程句柄是当你要访问该进程时取得的,使用完毕必须释放。 id一般是一个标识符,用来区别不同项 一个进程在不同的调用时间中有可能句柄的值是不一样的,但是ID只有也只能有一个 在Windows有一张指针表(就是指针数组),这些指针指向Windows内的各种对象(Windows概念的对象),其中就包含进行对象。 句柄就就是指针数组的编号。 进程ID,一个进程被创建后这个进程ID就是不变的。 进程句柄,每次打开这个进程(OpenProcess),返回给你的句柄是变化的 |
相关文章推荐
- 进程句柄和进程ID的区别和关系
- 进程PID、线程ID、实例Instance、句柄Handle的关系及App.hInstance 的用途
- 进程,轻量级进程,内核线程,用户线程的区别关系http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=27025492&id=3441601
- 句柄与进程ID的区别
- 进程和线程的关系与区别
- 进程和线程关系及区别
- MFC中对象、句柄、ID之间的区别.---------非常经典写得真好
- WIN32进程快照以及进程ID和句柄查找
- 进程和线程关系及区别
- 关于进程句柄 窗口句柄的关系
- 《Windows核心编程》学习笔记(6)– 线程的创建、与进程的关系、伪句柄转换
- VC++ 通过进程名或进程ID获取进程句柄
- 进程与线程的关系及区别
- VC由进程ID获取窗口句柄的各种方
- 线程ID 与 线程句柄 区别
- 进程和线程关系及区别
- 进程和线程关系及区别
- WINDOWS 下MFC中对象、句柄、ID之间的区别
- 进程和线程关系及区别
- 进程和线程的关系和区别