Jump to content


MO Error

  • Please log in to reply
30 replies to this topic

#31 Helidoc



  • Mod Authors
  • Pip
  • 61 posts

Posted 07 September 2017 - 05:53 PM

Unless a patch for MO/MO2 get's done I believe anyone on Win 10 will be out of luck once the Fall update rolls out to the public. Tannin commented on the issue on this topic as to what's the failure in this thread https://github.com/T...zer/issues/1124 I just wish I had the dev time and knowledge to address the issue as he hints at it only would take a few hours to fix. Chrisbro-MSFT "With help from Tannin and another MS developer we've tracked down the issue in MO. In the current preview releases of Win10, the FindFirstFileExW hooks in MO's hook.dll aren't getting called.Those methods were refactored in the Windows kernel."


Tannin "Exactly. So there are 4 FindFirstFile functions in the windows api: FindFirstFileA, FindFirstFileW, FindFirstFileExA and FindFirstFileExW.
Previously, the first 3 were implemented as "proxies" to FindFistFileExW, so they would convert their input parameters, call ...ExW then convert the output back to what they needed.
To save myself time and avoid bugs I only implemented a hook for ...ExW even though the gamebryo games actually call FindFistFileA because this way I caught all FindFirstFile requests and this worked in WinXP all the way to Windows 10, up to this latest release. Now the FindFirstFileA call no longer goes through FindFirstFileExW.

To fix it, you want to add a hook to FindFirstFileA and implement the hook the same way windows did in the past: convert the input parameter (the search path) to a wide string, call FindFirstFileExW_rep with that parameter and a temporary output variable, then transfer the values from the temporary output variable to the "real" output, again converting string parameters back to ansi. This way the ...ExW hook still does all the rerouting.

Ideally you should also implement FindFirstFileW and FindFirstFileExA hooks in a similar manner, although the latter would probably be a bit more complicated because it can have three different types of output formats, so you'd need three code paths for the conversion of the output parameter."


Above comments are paraphrased read the above link for more detail needless to say looks like I'll be dual booting instead of enjoying the dx9 fix to Win 10, did not run across this issue until I hit the S.T.E.P. 2.10.0 Part 2.N Patches installing the Extended version (sucks when you hit the end of an install) when it reared it's ugly head on the FNIS Install at the end and got a "Windows Exception (e0434352). Origin: "C:\WINDOWS\System32\KERNELBASE.dll" (76f60212). Last hooked call: int __stdcall GetFileAttributesExW_rep(const wchar_t *,enum _GET_FILEEX_INFO_LEVELS,void *) from MO and a ERROR(2012): Could not generate: defaultfemale.hkx defaultmale.hkx weapequip.hkx staggerbehavior.hkx sprintbehavior.hkx shout_behavior.hkx magicmountedbehavior.hkx magicbehavior.hkx magic_readied_direction_behavior.hkx 1hm_locomotion.hkx 1hm_behavior.hkx 0_master.hkx from FNIS"


Fun Stuff :) :P

  • 0

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users