[python-win32] EOFError in gencache.py

Mark Hammond skippy.hammond at gmail.com
Thu Feb 5 06:48:21 CET 2009


On 5/02/2009 9:40 AM, Zdenek Mejzlik wrote:
> File "c:\python25\lib\site-packages\win32com\client\gencache.py", line
> 109, in _LoadDicts
> version = p.load()
> EOFError

This is an error loading 'dicts.dat' from the win32com\gen_py directory. 
  The management of this file is very crude and doesn't protect against 
threads or processes stomping on other.

Does you app create COM objects on different threads, or are there 
multiple instances of your app starting at the same time?  If so, we 
might like to instrument the code to see if this indeed the problem.

> If I uninstall both pywin and Python and install them again the problem
> disappears. But it is only temporary
> solution the problem returns back after several days. Please, help me to
> find the definitive solution.

A quicker workaround should be to remove dicts.dat, or indeed, the 
contents of the entire gen_py directory (but don't remove the directory 
itself, or makepy will assume it can't write to win32com and use a 
gen_py under %TEMP%.)

Cheers,

Mark


More information about the python-win32 mailing list