Geoff Chappell, Software Analyst
The RTL_PROCESS_MODULE_INFORMATION structure is a recurring element in the RTL_PROCESS_MODULES structure that a successful call to ZwQuerySystemInformation or NtQuerySystemInformation produces at the start of its output buffer when given the information class SystemModuleInformation (0x0B).
The RTL_PROCESS_MODULE_INFORMATION structure is not documented.
Microsoft does publish the practical equivalent of a C-language definition as type information in public symbol files, though not for the kernel, where the structure is prepared, nor even for low-level user-mode DLLs that interpret the structure, but for various higher-level user-mode DLLs such as URLMON.DLL and only then starting with version 6.2.
Two earlier disclosures of type information are known, though not in symbol files but in statically linked libraries: GDISRVL.LIB from the Device Driver Kit (DDK) for Windows NT 3.51; and SHELL32.LIB from the DDK for Windows NT 4.0.
The RTL_PROCESS_MODULE_INFORMATION is 0x011C or 0x0128 bytes in 32-bit and 64-bit Windows, respectively.
|Offset (x86)||Offset (x64)||Definition|
CHAR FullPathName [0x0100];
The OffsetToFileName is the offset in bytes from the start of the FullPathName to just the filename part.