[Python-bugs-list] [ python-Bugs-442142 ] DLL base assignments need update

noreply@sourceforge.net noreply@sourceforge.net
Tue, 17 Jul 2001 22:57:39 -0700


Bugs item #442142, was opened at 2001-07-17 13:28
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=442142&group_id=5470

Category: Windows
Group: Platform-specific
Status: Open
Resolution: None
Priority: 5
Submitted By: Tim Peters (tim_one)
Assigned to: Mark Hammond (mhammond)
Summary: DLL base assignments need update

Initial Comment:
>From c.l.py.  The core DLL has grown quite a bit since 
these addresses were first assigned, and it 
systematically collides with, e.g. the bsddb and zip 
DLLs now too.  pythonw.exe is also assigned the same 
base address as the tkinter DLL, which is "a bug".  
Since any change here has ripple effects into your 
(Mark's) Win32 extension assignments, I'm assigning 
this to you for pondering.  Heck, you can even feel 
free to fix it <wink>.

"""
From: Robin Becker
Sent: Tuesday, July 17, 2001 9:21 AM
To: python-list@python.org
Subject: python2.1 pythonw.exe base address

I don't know how much this is of real interest, but 
using the latest proc explorer from 
http://www.sysinternals.com/ I notice that pythonw.exe 
has a base address of 0x1e190000, but that python21.dll
wants to reside at 0x1e100000 and has a length of 
0xAF000, the result is that python21.dll gets 
relocated.

Redefining the base address of pythonw to be something 
non-controversial that didn't overlap would be a zero 
cost win for tk apps.

as an aside it seems that tcl83.dll and _tkinter.pyd 
are also relocated, but I don't know the desired base 
address.
"""


----------------------------------------------------------------------

>Comment By: Mark Hammond (mhammond)
Date: 2001-07-17 22:57

Message:
Logged In: YES 
user_id=14198

[From a followup on the newsgroup]
Yes; "link /dump /headers" shows the same thing.

Why isn't pythonw.exe based at 00400000 like most well-
behaved executables?
Rebasing to 1E190000 unnecessarily fragments linear space.
---

tcl83.dll is at the default base of 10000000.  _tkinter.pyd 
is set to
1E190000, same as pythonw.exe.

I have to believe the pythonw.exe base address is a bug.



----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=442142&group_id=5470