阅读:2551回复:3
在驱动里面调用PsGetCurrentProcess的问题
首先, 我不是一个驱动开发人员,在这一方面,我了解的很少.只是最近手上一个软件,有自己的驱动(与光驱打交道),我想它在驱动程序里面做了手脚:反调试.所以想要解开这个限制.我调试它的驱动,发现在IRP_MJ_DEVICE_CONTROL中一个PsGetCurrentProcessId的调用,我想请教一下熟悉驱动编写的同仁们,这个函数(还有相关的PsGetCurrentProcess等一族函数),它返回的进程ID是这个驱动的客户程序(DeviceIoControl的调用者)的进程ID还是Windows处理这个IRP请求的进程的进程ID?
谢谢 |
|
沙发#
发布于:2008-09-19 09:10
同步就是调用者的进程ID,异步就难说了,可能在SYSTEM里。
|
|
|
板凳#
发布于:2008-09-19 11:29
那就再问一句,一个调用DeviceIoControl的客户程序,怎么知道它是同步还是同步?
|
|
地板#
发布于:2008-10-08 20:22
看是否设置了overlapped参数,如果设置了就是异步,否则就是同步
|
|