https://bugs.winehq.org/show_bug.cgi?id=43270
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |sxs Keywords| |dotnet
--- Comment #13 from Fabian Maurer dark.shadow4@web.de --- After a few more hours, I think I'm getting to the gist of it.
There are multiple issues here:
1) wine-mono isn't used to handling registration free components, so it fails Workaround: use "winetricks -q dotnet20"
2) My test case doesn't work because it can't find the manifest - because it has a different resource ID because it's "isolation aware" (whatever that means) Workaround: Attached hack for my testcase
3) Then CoCreateInstance calls into mscoree.DllGetClassObject (see updated testcase I attached) and you can get a IClassFactory to create the object. However, behind the scenes mscoree calls sxs, and that doesn't know how to do lookup of the registration free classes either. Workaround: Use native sxs
4) Native sxs crashes due to missing ntdll functions Workaround: Use my hacks to add functions into ntdll
With this knowledge and these hacks, one can get the testcase and even EAC to run. Just note that the hack for MY testcase breaks EAC, and without the hack EAC works but my testcase does not.
I guess we should make this about the sxs issue, so native .NET works.