[python] ctypes - cesty k závislým DLL

jiri.zahradil na gmail.com jiri.zahradil na gmail.com
Pátek Březen 31 13:26:04 CEST 2017


Mám "adresář knihovny" ve kterém mám hlavní knihovnu xxx.dll ze které
používám pomocí ctypes nějaké funkce. Knihovna používá další knihovny
DLL, uložené ve stejném adresáři jako xxx.dll.

V mém modulu xxx.py pak použiji:

lib = cdll.LoadLibrary("nějaká cesta/xxx.dll")

Ovšem pokud zrovna adresář s xxx.dll a ostatními závislými knihovna
není aktuální adresář nastane mi vyjímka:

WindowsError: [Error 22] Uvedený modul nebyl nalezen

Předpokládám, že je chyba, že nelze nalézt závislé knihovny (cesta k
hlavní DLL je 100% v pořádku), ovšem pokud jsou v aktuálním adresáři
odkud se python spouští, vše funguje. Rád bych aby se hledaly ve
stejném adresáři jako xxx.dll, ale nevím jak a kde to nastavit. Nevíte
někdo? Případně pokud je problém jinde ... může mě někdo nasměrovat?
Nouzová možnost je samozřejmě nakopírovat je někam do \windows
\system32 pak to také funguje.



Další informace o konferenci Python