This serie is to move Wine's implementation of EnumProcessModules closer to Windows' behavior.
Wine's current implementation is broken for a wow64 process enumerated from a 64bit bit process: - it returns the list of 32bit modules, while Windows returns the main module (32bit) and the 64bit modules (in wow64 process).
This series: - adds tests to demonstrate that discrepancy - fix all caller's to EnumProcessModules in Wine source tree which require the 32bit bit modules (thanks to EnumProcessModulesEx) - fortunately, a couple of callers only require the first (main) module and don't need to be changed. - re-implement EnumProcessModules on top of EnumProcessModulesEx (to mimic Window's results) - shows also that Wine's implementation returns loaded modules from a different directory than Windows. Also tested on Win10, the returned paths from EnumProcessModules+GetModuleFileNameEx are the same as the ones stored in LDR_DATA.
So, there's still more work to do after this serie: - with loader's path for wow64 processes - fix dbghelp to handle the conversions: information from EnumProcessModules, debug events reports from system32, while dbghelp (SymEnumerateModules, SymRefreshModules and the like) report from syswow64! (except ntdll)