Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 28, 2023 10:36:38

UshakovNikolay
Зарегистрирован: 2023-12-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение DLL ctypes

Добрый день!
win7 64, Python 3.8.8 32(потому что dll win32)
скрипт:
from ctypes import *
lib = cdll.LoadLibrary(r“c:\tmp\dll_test\KrugDBClient.dll”)

lib.KrugDBConnect.restype = c_ulong
lib.KrugDBConnect.argtypes =
qwe = c_wchar()
dwConnectID = c_ulong()
res = lib.KrugDBConnect(pointer(qwe),pointer(dwConnectID))
print(hex(res))
print(dwConnectID)

запускаю через IDLE IDE->открыть файл->F5
после LoadLibrary вылетает - происходит RESTART shell
сначала LoadLibrary выполнялась нормально, ошибка была в KrugDBConnect “неправильный параметр”,
но с какого-то момента перестала выполняться уже LoadLibrary
(путь указан правильно, если изменить, ругается что не может найти библиотеку)

Офлайн

#2 Дек. 28, 2023 13:48:09

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

подключение DLL ctypes

Нвачнем вот с чего:
1. Вы обернете код в тег - что бы он был читабельным
2. Вы навсегда забудете про IDLE и не будете его запусать. Напиишите код в файле, сохраните его и выполните коммандой
python path_to_file/your_fie.py
3. Выложите нормальный лог ошибки а не передадите его суть
4. Добавите в код print-ы что бы было понятно где вываливается ошибка



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#3 Дек. 28, 2023 15:10:55

UshakovNikolay
Зарегистрирован: 2023-12-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение DLL ctypes

 from ctypes import *
print("1")
lib = cdll.LoadLibrary(r"c:\tmp\dll_test\KrugDBClient.dll")
print("2")
lib.KrugDBConnect.restype = c_ulong
lib.KrugDBConnect.argtypes = [POINTER(c_wchar), POINTER(c_ulong)]
qwe = c_wchar()
dwConnectID = c_ulong()
res = lib.KrugDBConnect(pointer(qwe),pointer(dwConnectID))  
print(hex(res))
print(dwConnectID)
лог:
C:\tmp\dll_test>python test.py
1

Отредактировано UshakovNikolay (Дек. 28, 2023 15:13:59)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version