win32com: use not possible as normal user

Sibylle Koczian Sibylle.Koczian at Bibliothek.Uni-Augsburg.de
Fri Aug 12 05:01:13 EDT 2005


Hello,

I've installed Python 2.4 and the win32 extensions, using administrator 
rights, under Windows XP in "C:\Programme". As this is a directory 
without spaces I didn't expect any problems. But now I can't _use_ 
win32com as a normal user, because normal users can't write there:

PythonWin 2.4.1 (#65, Mar 30 2005, 09:13:57) [MSC v.1310 32 bit (Intel)] 
on win32.
Portions Copyright 1994-2004 Mark Hammond (mhammond at skippinet.com.au) - 
see 'Help/About PythonWin' for further copyright information.
 >>> import win32com.client
...
 >>> import wdclass
 >>> kal = wdclass.easyWord()
Traceback (most recent call last):
   File "<interactive input>", line 1, in ?
   File "h:\eigene dateien\abt\kalender\wdclass.py", line 10, in __init__
     self.wdApp = win32com.client.Dispatch('Word.Application')
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\__init__.py", 
line 96, in Dispatch
     return __WrapDispatch(dispatch, userName, resultCLSID, typeinfo, 
UnicodeToString, clsctx)
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\__init__.py", 
line 38, in __WrapDispatch
     klass = gencache.GetClassForCLSID(resultCLSID)
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\gencache.py", 
line 179, in GetClassForCLSID
     mod = GetModuleForCLSID(clsid)
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\gencache.py", 
line 222, in GetModuleForCLSID
     mod = GetModuleForTypelib(typelibCLSID, lcid, major, minor)
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\gencache.py", 
line 262, in GetModuleForTypelib
     AddModuleToCache(typelibCLSID, lcid, major, minor)
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\gencache.py", 
line 575, in AddModuleToCache
     _SaveDicts()
   File 
"C:\Programme\Python24\Lib\site-packages\win32com\client\gencache.py", 
line 64, in _SaveDicts
     f = open(os.path.join(GetGeneratePath(), "dicts.dat"), "wb")
IOError: [Errno 13] Permission denied: 
'C:\\Programme\\Python24\\lib\\site-packages\\win32com\\gen_py\\dicts.dat'
 >>>

Do I have to move my Python installation to another directory with write 
permissions for normal users? Or is there a simpler way? This might not 
be a problem for users with english Windows installations who can get 
bitten anyway by the space in "program files". But in my german 
installation I never had a reason to install Python outside of "Programme".

Thanks for any help,
Koczian
-- 
Dr. Sibylle Koczian
Universitaetsbibliothek, Abt. Naturwiss.
D-86135 Augsburg
e-mail : Sibylle.Koczian at Bibliothek.Uni-Augsburg.DE



More information about the Python-list mailing list