https://bugs.winehq.org/show_bug.cgi?id=52222
--- Comment #6 from RĂ©mi Bernon rbernon@codeweavers.com --- Thanks, although Paul rightfully noted on the mailing list that COM involves tricky details that we may want to avoid here.
I think I was looking at an invalid version of the code before and didn't see that winmm is actually creating a dinput instance at load time, I believe that's what made the delay load behave exactly like the non-delay load version.
With some added lazy loading I think it should work fine.