This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author eryksun
Recipients eryksun, mhammond, paul.moore, steve.dower, tim.golden, zach.ware
Date 2016-01-10.07:23:11
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1452410592.32.0.529671510233.issue26071@psf.upfronthosting.co.za>
In-reply-to
Content
> We'd have to statically link python##.dll.

I was talking about the partially static build that you used for wininst-14.0-amd64.exe in rc3, in which vcruntime is linked statically but ucrt is linked dynamically (actually to the api-ms-win-crt-* API sets). But is there a bad assumption there? I was only thinking about installing to systems with Python 3.5+, on which ucrtbase.dll is guaranteed to be in System32, but this installer should work for older systems that don't have the universal CRT update, right?

> However, it may break other loads if python##.dll calls it or 
> makes assumptions about the search path

I don't understand. It would be pretty broken if python##.dll depends on the current directory. All SetDllDirectory does is swap in the target directory in place of the current directory in the DLL search path. I made the suggestion because it's cleaner to surgically change only what the system loader sees, rather than changing the current directory, which affects everything. The LoadLibrary docs recommend using SetDllDirectory instead of changing the current directory. Using AddDllDirectory would be better, but that's only available on updated Vista/7 systems (KB2533623).
History
Date User Action Args
2016-01-10 07:23:12eryksunsetrecipients: + eryksun, mhammond, paul.moore, tim.golden, zach.ware, steve.dower
2016-01-10 07:23:12eryksunsetmessageid: <1452410592.32.0.529671510233.issue26071@psf.upfronthosting.co.za>
2016-01-10 07:23:12eryksunlinkissue26071 messages
2016-01-10 07:23:11eryksuncreate