missing dll follow-up

Jonathan Hartley tartley at tartley.com
Thu Apr 15 07:11:05 EDT 2010


Alex Hall wrote:
> The vcredist_x86 was, I thought, supposed to give me
> the dll, but it does not seem to have done so.

The installer puts the DLL in the directory C:\WINDOWS\WinSxS
(or at least it does for me, on WinXP) I shall update the py2exe
tutorial page to reflect this.

Under that dir, there are a lot of mangled directory names, and a
director called 'Manifests'. You can still discern the text
'Microsoft.VC90.CRT' and '9.0.21022.8' within the filenames of the DLL
dir and the manifest file that you want. I am no expert, but I think
if you are taking a copy of these to embed in your application, then
you can (must?) rename them to remove the mangling, as described on
the py2exe tutorial page.

If you still cannot find the DLL there, then try searching your
"Program Files" folder for a copy included with another application.
Several other Visual C/C++ applications include these runtime DLLs.
(eg. Console2 from sourceforge)

One other thing to keep in mind is that there is more than one version
of this DLL in the wild, all with the same filename. You absolutely
need the same version that Python 2.6 was compiled with, which is
9.0.21022.8. You can tell which version of the DLL you have got the
tooltip when hovering you mouse cursor over it. (also hovering over
the redistributable installer will tell you the same thing)

The original version of the redistributable installer does provide the
correct DLL version (this is the same thing as linked to above. This
is the English version):
http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=en

The SP1 version of the same installer provides a different version of
the DLL (but with the same filename). This will not work.



More information about the Python-list mailing list