[Distutils] Prerelease: bdist_wininst
Thu, 15 Jun 2000 18:18:10 +0200
I haven't tried it yet, but there are some problems.
First of all, you use the zlib module, which is not
always installed. (It is comment out in python's
source code.) Would it be possible to use an external
zip program as make_zipfile in archive_util.py does?
Second you use struct without to specify the byte-order,
for Windows you need little-endian. (Sun uses
big-endian, and your installer wouldn't work?)
So you had to write "<iiiiiiii".
> header = struct.pack ("iiiiiiii",
> 0x12345678, # tag
> comp_method, # compression method
> crc32, # checksum
> len (cfgdata), # uncompressed length
> len (zcfgdata), # compressed length
> 0, 0, 0) # reserved fields
see also http://www.python.org/doc/current/lib/module-struct.html
And finally, it seems you use the registry to find out if there
is a python installation. However, it is possible to have a working
python installation on a zip-medium (you only have to add the directory
to the PATH) and this has certainly no registry entries.
(I use this if I want to try python programs and extensions on another
configuration. For example on NT, because I use python on Win98.)
It should be possible if there are no registry entries, let the
user specify the directories (and python1?.dll) to use.
(I know python1?.exe find its directory for itself, but what
happens if you load only the DLL? I think then you need the function
void Py_SetProgramName (char *name)
to help python with this.)