2009-08-17 8 views
2

私はpywin32をpython 2.5で動かしています。Python/ADOX: '指定されたモジュールが見つかりませんでした。' (win32拡張版)

私はhttp://www.ecp.cc/pyado.htmlで与えられたpython ADOの指示に従っています。

ADODB.Recordsetオブジェクトを作成すると正常に動作します。しかし、ADOX.Catalogオブジェクトを作成しようとすると、エラーが発生します。

>>> cat=win32com.client.Dispatch(r'ADOX.Catalog') 
Traceback (most recent call last): 
    File "<interactive input>", line 1, in <module> 
    File "C:\Python25\lib\site-packages\win32com\client\__init__.py", line 95, in Dispatch 
    dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,clsctx) 
    File "C:\Python25\lib\site-packages\win32com\client\dynamic.py", line 98, in _GetGoodDispatchAndUserName 
    return (_GetGoodDispatch(IDispatch, clsctx), userName) 
    File "C:\Python25\lib\site-packages\win32com\client\dynamic.py", line 78, in _GetGoodDispatch 
    IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.IID_IDispatch) 
com_error: (-2147024770, 'The specified module could not be found.', None, None) 

アイデアはありますか?

答えて

4

解決策:ADOXがCOMブラウザで利用可能なライブラリとして表示されていても、正しく登録されていませんでした。これはWinXPのSP2のマシン上にあることを

 
regsvr32 "C:\Program Files\Common Files\System\ado\msadox.dll" 

注:指示hereに続いて、私は実行し、プロンプト> [スタート]で次のように実行します。私はレジストリが何とか壊れていたと思いますか?いずれにしても、私はWindowsプログラミングの初心者ですので、説明が間違っているかもしれませんが、修正が誰かを助けるかもしれません。