[Python-de] pyfromc, python23.zip und Threads

Thomas Heller theller at python.net
Don Okt 30 11:02:32 CET 2003


"Gerson Kurz" <gerson.kurz at pergamon-software.de> writes:

> 1) Seit 2.3 kann ich Module aus python23.zip importieren. Das Zipferl wird
> allerdings in dem Pfad gesucht, in dem die python23.dll liegt.
>
> Fallbeispiel a: ich installiere python23.zip und python23.dll in c:\foo auf
> einem leeren System -> python23.zip wird korrekt angezogen
>
> Fallbeispiel b: ich installiere python23.zip und python23.dll in c:\foo auf
> meinem Entwicklerpc -> python23.zip wird in \winnt\system32 gesucht, weil da
> die python23.dll liegt.
>
> Die entsprechende Stelle im Python-Quellcode ist pc\getpathp.c, Zeile 465++
>
> 	/* Calculate zip archive path */
> 	if (dllpath[0])		/* use name of python DLL */
> 		strncpy(zip_path, dllpath, MAXPATHLEN);
> 	else			/* use name of executable program */
> 		strncpy(zip_path, progpath, MAXPATHLEN);
>
> d.h. ich sehe auch nicht, wie man da einfach was umlenken kann. Ich möchte
> möglichst alle module (z.b. auch os) aus dem Zipferl laden, das aber an
> einer speziellen Stelle liegen soll; das Problem ist, daß ich das vor
> Py_Initialize() einstellen müsste...

Sieh Dir den Quellcode zu py2exe (in CVS, im sandbox Subdirectory) an,
dann siehst Du wie es geht. (Hint: PYTHONPATH setzen bevor Py_Initialize
aufgerufen wird).

Thomas