Thanks for the great work on this! It is really cool, however I am having a dependency problem that would be great to resolve. uxtheme currently links in shlwapi.dll, shlwapi.dll in turn links in ole32.dll. Since WM_NCCREATE seems to load uxtheme it would be that ole32 is being loaded almost all the time now.
This is an issue because when we here at CodeWeavers try to install dcom95.exe we need to set ole32=native (ie, disabled) so that dcom95 does not detect the builtin version. However because uxtheme is now being loaded with MessageBoxA, the install fails because it is unable to load ole32, thus shlwapi and thus uxtheme.
Looking at uxtheme it seems like there are only 3 functions being used out of shlwapi.
StrChrW: this is also located in comctl32.dll, while i hate to add comctl32.dll as a dependency to swap out shlwapi, it does solve the current problem, also a quick reimplementation of StrChrW as a helper function would remove this problem totally.
SHRegGetPathW and PathAddBackslashW: These are really convenient functions but should not be hard to make little helper functions to replace the dependency.
Any chance these changes could be made? Thanks alot, -aric