The ModuleFirst function fills a MODULEENTRY structure with information about the first module on the list of all currently loaded modules. This information includes the module name, handle, reference count, path to the executable file, and so on.
You use ModuleFirst to begin a walk through the Windows module list. The ModuleNext function continues the walk by filling a MODULEENTRY structure with information about the next module on the list.
The ModuleFindHandle function fills a MODULEENTRY structure with information about a module whose handle is known. The ModuleFindName function fills a MODULEENTRY structure with information about a module whose name is known. You use ModuleFindHandle or ModuleFindName, rather than ModuleFirst, to begin a walk through the Windows module list at a specific module, rather than at the first module on the list.