I'm building a utility (32 bit) with PyI that needs to be runnable on
machines with different Windows versions. (For reference, I'm using PyI
2.0 at the moment, and Python 2.7.2.)
The generated manifest filereferences VC90.CRT and VC90.MFC at version
9.0.21022.8. When I run it on my machine (Win 7 Pro), Process Explorer
shows it's picked up 9.0.30729.6161 of the MSVC[pr].dll files. When I
copy the .exe and manifest to another machine (Server 2008R2), it fails,
with the "attempt to load the C runtime library incorrectly" message.
The event trace shows:
Component identity found in manifest does not match the identity of
the component requested. Reference is
Microsoft.VC90.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8".
Definition is
Microsoft.VC90.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.30729.1".
(The sxs folders show a third version of the files: 9.0.30729.4926.)
Changing the version numbers in the foo.exe.manifest file has no effect.
Stepping back from the gory details for a moment: what I really want is
to not have to worry about what might be in the Windows/winsxs of the
target machines.I found a discussion of this at
https://groups.google.com/forum/#!topic/pyinstaller/4a9Nb2zgteo, where
the recommendation was to add an 'a.binaries' entry to force inclusion
of a particular version of the DLLs.I'll give that a try, startingwith
9.0.21022.8.
However, I'd like to know if anyone has a better suggestion. At this
point, the whole SxS thing smells to me like the latest edition of DLL
Hell. (For an example of Visual C++ users struggling with this, see
http://stackoverflow.com/questions/59635/app-does-not-run-with-vs-2008-sp1-dlls-previous-version-works-with-rtm-versions)
Thanks for any good words,
--
Don Dwiggins
Advanced Publishing Technology
--
You received this message because you are subscribed to the Google Groups
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/groups/opt_out.