[Bug 35374] SolidWorks 2013 fails to setup CLR 4.0 hosting, complains about unimplemented function mscoree.dll.CLRCreateInstance (.NET 3.x mscoree.dll not updated/replaced by .NET 4.0 installer)

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Jan 12 14:27:39 CST 2014


http://bugs.winehq.org/show_bug.cgi?id=35374

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
                 CC|                            |focht at gmx.net
          Component|-unknown                    |msi
            Summary|unimplemented function      |SolidWorks 2013 fails to
                   |mscoree.dll.CLRCreateInstan |setup CLR 4.0 hosting,
                   |ce                          |complains about
                   |                            |unimplemented function
                   |                            |mscoree.dll.CLRCreateInstan
                   |                            |ce (.NET 3.x mscoree.dll
                   |                            |not updated/replaced by
                   |                            |.NET 4.0 installer)
     Ever confirmed|0                           |1

--- Comment #2 from Anastasius Focht <focht at gmx.net> ---
Hello denis,

this is the result of having both .NET Frameworks, 3.5 and 4.0 installed into
same WINEPREFIX.

CLRCreateInstance() is only available from CLR 4.0 or higher so this error is
kind of expected if the native 'mscoree.dll' is from .NET 3.x installation.

The proper way for application code to determine/request the correct CLR would
be:

1) load 'mscoree' dynamically
2) GetProcAddress() of 'CLRCreateInstance'
    -> if NULL, fall back to legacy path (CorBindToRuntimeEx)
    -> if non-NULL, call CLRCreateInstance() to get ICLRMetaHost
         -> if E_NOTIMPL, fall back to legacy path (CorBindToRuntimeEx)

Apparently the app wants CLR 4.x hosting and hard-binds to CLRCreateInstance()
(unsafe).

You could try to reverse the .NET Framework installation order to have CLR 4.0
mscoree: -> .NET 4.0 first and then .NET 3.x 

There might be some dialog boxes during install, stating 'failed to load
requested runtime'. You can dismiss them.

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list