Steve Dower added the comment:

Python needs to be recompiled to use a different CRT, and that will break all 
existing extension modules (.pyd's). That said, in some situations it is the 
right answer, typically because existing extension modules would be broken 
anyway, but I don't think that applies here.

To load msvcr90.dll, you need to declare in your executable which version you 
want to use using a manifest. This enables side-by-side use of the CRT, so 
different programs can use different versions and they are all managed by the 
operating system (for security fixes, etc.). Otherwise, you get hundreds of 
copies of the CRT and they are likely to be lacking the latest patches.

A way to hack in the manifest is to put it alongside the executable. You could 
take the file from 
http://stackoverflow.com/questions/27389227/how-do-i-load-a-c-dll-from-the-sxs-in-python/27392347#27392347
 and put it alongside the MATLAB executable as "matlab.exe.manifest" or 
whatever, which avoids having to get Mathworks involved, and that might allow 
you to load msvcr90.dll. If they've already embedded a manifest into the 
executable (which is very likely), then I don't know which one will win or what 
effects may occur if the original one is ignored.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue24429>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to