0

I have a 32-bit application running python scripts. On one user's PC I get this error on the other I don't.

  • On the user's PCs with 64bit-Windows there is the Oracle instant client 32bit installed.
  • PATH environment variable contains the instant client folder.
  • ORACLE_HOME environment variable is set correctly to the instant client folder.
  • The app executable resides on a file server (no installation on the user PCs).
  • Python and all used libraries and scripts are also on the file server (no installation on the user PCs).
  • Other apps can use the Oracle instant client and connect to the database (not via Python) without any problems.
  • Other Python scripts within my app run perfectly and load libraries.

What could be wrong on that PC? Where should I look at?

(please note that I don't have access to these PCs and I don't want to trouble my customers too much with diagnosis tools like dependency walker etc.)

This question is not a duplicate of Python module “cx_Oracle” module could not be found. I did everything mentioned in those answers and it still does not work.

Community
  • 1
  • 1
Tigerfink
  • 69
  • 1
  • 10
  • You have to have an Oracle client installed at your side. You've mentioned that in the first point but are you using 32-bit Python and the 32-bit client? – aneroid Oct 27 '16 at 04:15
  • Yes, everything is 32 bit except Windows (probably Windows 7) – Tigerfink Oct 28 '16 at 12:42
  • It seems not to be possible to answer this question, so I post the solution as a comment: – Tigerfink Nov 10 '16 at 11:59
  • With Sysinternals ProcessMonitor I found out that on the user's PC msvcr71.dll was missing (however this dll is not even loaded by the app process on my developer PC!). I copied it into the folder where cx_oracle is installed and now I am one step further :-) The next error the users get is an Oracle error (Ora-24315: illegal attribute type). – Tigerfink Nov 10 '16 at 12:05

0 Answers0