From: Mark H. <ski...@gm...> - 2009-06-18 02:10:00
|
On 18/06/2009 4:57 AM, Robert wrote: > I searched the web and here. Bits, but still confused, or more > confused about the official/correct/best way to distribute py26 > binary win apps. No complete working description found. > > When copying the msvcr90.dll (and when to use msvcp90.dll too?) > next to the .exe , it doesn't simply run on a machine without > Python/MSVCRT9-SxS , but just says "app cannot be started". Also > when I created a app.exe.manifest (in various ways). You need to copy the msvcrt .manifest file, plus all .dlls referenced in that manifest, used or not. > * What ingredients are needed for multi-win-distribution > 98..XP..Vista/3000 ? Win2k and later should be fine. > * What must be in the app.exe.manifest - or can this be included > inside the .exe with other_resources ? Assuming you have the most recent 2.6 build, you should find py2exe takes care of the .exe's manifest for you. You can use a manifest tool to confirm this. > * Where to put the things? Must I / the installer create& setup > those complicated dirs in \windows\winSxS\... ? register something? Just having the manifest directly next to the .exe should be enough (although maybe not with the 'bundle' options, nor with strange directory layouts - the defaults should be fine) > * Or can the Dlls and manifest(s) be all put local? Or can they > still be all put even inside a single-file exe > (py2exe/bundle_files) - so that I have a real singe-file solution > ? (often I like to e-mail quickscripted singlefile commandline > tools without worrying about dirs) IIRC, the py2exe generated executable itself depends on the CRT, in which case it is not possible to use bundling for these files. It *might* be possible to upgrade py2exe so this is possible (by making the py2exe stub itself not depend on the CRT, so it could expand the CRT before loading python) > * What is the exact news with Vista vs XP? (I have no frequent > access to Vista currently, but the apps shall run on Vista) No problem. The UAC entries of the manifest may offer you some problems with vista, but (a) py2exe supports overriding that and (b) a manifest tool will be able to tell you exactly what is, or is not, in any particular manifest. > * can the python.exe / app.exe , dlls modified or whatever to > overcome/switch off this SxS / UAC chaos at all ? ( Bills > Developers seem to have nothing anymore productive to do but to > complicate things and self-create problems for the world ... > circular world-wide self-occupation ? ) If you depend on the vs2008 runtime libs there is no way to avoid it other than the above (ie, by having a complete copy of the manifest next to your .exe, and a reference to that manfiest in your .exe.) Cheers, Mark |