1
odoo 9コードからWindows dllで作業しようとしています。 Pythonクラスのコードは次のとおりです。Windows 10でPython 32ビットを使用してCOMエラーが発生しました64ビット
import win32com.client
import pythoncom
Pythoncom.CoInitialize()
Zk = win32com.client.Dispatch ('zkemkeeper.ZKEM.1')
私は、Windows 8(64ビット)上でそれを実行すると、それは問題なく動作しますが、私はサービスとしてのWindows 10(64ビット)上でそれを実行したときに、私を得ますログファイルの次のエラー:
File "C: \ Python27 \ lib \ site-packages \ win32com \ client \ dynamic.py", line 85, in _GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance (IDispatch, None, clsctx, pythoncom.IID_IDispatch)
Com_error: (-2147221164, 'Class not registered', None, None)
Regedit; dllが登録されます。
同じPCにPython 32ビットをインストールしてコンソールから直接コードを実行すると、同じエラーが表示されます。しかし、私はPython 64ビットをインストールし、同じコードを実行し、それは正常に働いた。
サービスとしてodooでこのエラーを修正する方法を教えてもらえますか?内部のものではなく、PCにインストールされた64ビットのPythonを指す方法はありますか?
これは完璧に、ありがとう!私は書いた: 'Zk = win32com.client.Dispatch( 'zkemkeeper.ZKEM.1'、clsctx = pythoncom.CLSCTX_LOCAL_SERVER)' – Dayana