How to use ZwQueryInformationProcess to get ProcessImageFileName in a kernel driver?
I'm writing a simple kernel driver for my application (think of a very simple anti-malware application.) I've hooked ZwOpenFile() and used PsGetCurrentProcess() to get a handle to the caller process. It returns a PEPROCESS structure: PEPROCESS proc = PsGetCurrentProcess(); I'm using ZwQueryInformationProcess() to get the PID and ImageFileName : DbgPrint("ZwOpenFile Called...\n"); DbgPrint("PID: %d\n", PsGetProcessId(proc)); DbgPrint("ImageFileName: %.16s\n", PsGetProcessImageFileName(proc)); and trying to get the process FullPath this way (but I get BSOD): WCHAR strBuffer[260]; UNICODE_STRING