Mailing List Archive

Windows install has problems.
Guido, didn't I write you a hack for this?

I'll look on my home machine later, but I think I did. Also, why doesn't the
Tcl install do this correctly? We should complain to them about it.

Anyway, I am sure I can fix this using wise.

Joe Robertson
jmrobert@ro.com



Barry Scott wrote:

> THis is Guido's reply to my comments that tcl80.dll is not found
> by IDLE on a default installation.
>
> > > > Running "IDLE (Python GUI)" reports that tcl80.dll is
> > > > not in my path then the shell comes up and I can
> > > > use Tkinter from the shell.
> > > >
> > > > Just in case this might be involved my Windows NT system
> > > > is on G: not C:.
> > >
> > > To solve this one, I think you'll have to edit your autoexec.bat to
> > > add the Tcl directory (containing that DLL) to the PATH variable. For
> > > various reasons I do not believe it is a good idea to copy the Tcl/Tk
> > > DLL files into the Python directory, nor do I think it is possible to
> > > reliably edit autoexec.bat in the installer. Instead, Tkinter.py
> > > imports a hack module, FixTk.py, which searches for tcl80.dll in a few
> > > places and then patches the PATH environment variable of the running
> > > process, but this is not failsafe either. :-(
> >
> > It would be nice if I did not have to edit the path manually.
> > Suggest that the install edits the path or you use the registry
> > to find the tcl80.dll image.
>
> I wish I could. The installer is very stupid. Windows sucks :-(
>
> > 1) The PATH is a registry key on NT. I don't have an autoexec.bat,
> > isn't for MS-DOS compatibility only these days?
>
> No, it's still needed on Windows 98 and 98.
>
> > The machines PATH is in
> >
> > HKEY_LOCAL_MACHINE\CurrentControlSet\Control\Session Manager\Environment
> >
> > 2a) I notice that HKEY_CLASSES_ROOT\TclShell\shell\open\command
> > contains a default value which is how to run wish. e.g.
> >
> > G:\PROGRA~1\Tcl\bin\wish80.exe "%1"
> >
> > tcl80.dll is in the same dir as wish80.exe.
> >
> > 2b)
> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls
> > lists all the shared files on the system. There is an value
> > "G:\Program Files\Tcl\bin\tcl80.dll" with the date 0x0000001 against it.
> >
> > 2c) HKEY_LOCAL_MACHINE\SOFTWARE\Scriptics\Tcl\8.0
> > contains the default value field with the data G:\PROGRA~1\Tcl
> >
> > The DLL being in data + "\tcl80.dll".
> >
> > BArry
> Please take it up on the newsgroup -- there are many people with
> similar interests and more understanding of Windows than I have!
>
> --Guido van Rossum (home page: http://www.python.org/~guido/)