我正在尝试编写监视器进程的基本驱动程序并获取进程path。
我创buildPsSetCreateProcessnotifyRoutine并使用ZwQueryinformationProcess检索进程信息
但在我的ProcessCallback函数中,当我尝试使用NtCurrentProcess获取当前进程HANDLE ,它给我当前进程运行另一个进程。
例如:
我尝试运行myProgram.exe在C:,当我去C:使用Windows资源pipe理器,并运行myProgram.exe我的驱动程序给我的explorer.exepath,因为myProgram.exe内运行explorer.exe
我在我的ProcessCallback标题中有processID
访问设备configuration空间 – 赢得内核PCI设备
在驱动程序和Windows服务之间传递数据
虚拟networking接口的Windows
适用于Linux的MMIO / PIO Info
void ProcessCallback( IN HANDLE hParentId,IN HANDLE hProcessId,IN BOOLEAN bCreate )
。我可以将其转换为处理句柄?
学习linux驱动
什么是WINVER 0x501? 没有它的RegisterDeviceNotification错误
“部分不透明”是什么意思的Windows代码?
linux非标准的串口控制台
用自定义驱动程序replaceWindows USB类驱动程序?
HANDLE proc = NULL; OBJECT_ATTRIBUTES obj_attr; CLIENT_ID cid; cid.UniqueProcess= hProcessId; //PsGetCurrentProcessId(); cid.UniqueThread= NULL ; //(HANDLE)0; InitializeObjectAttributes(&obj_attr,NULL,NULL); ZwOpenProcess(&proc,PROCESS_ALL_ACCESS,&obj_attr,&cid);