У меня есть модуль Python, wrapper.py
, который обертывает C DLL. DLL находится в той же папке, что и модуль. Поэтому для его загрузки я использую следующий код:
myDll = ctypes.CDLL("MyCDLL.dll")
Это работает, если я выполняю wrapper.py
из своей собственной папки. Если, однако, я запускаю его из другого места, он терпит неудачу. Это потому, что ctypes вычисляет путь относительно текущего рабочего каталога.
Мой вопрос: существует ли способ, которым я могу указать путь к DLL относительно оболочки вместо текущего рабочего каталога? Это позволит мне отправить эти два вместе и позволить пользователю запускать/импортировать обертку из любого места.